<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.ss220.space/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vladisvell</id>
	<title>SS220 Paradise Wiki (SS13) - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ss220.space/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vladisvell"/>
	<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Vladisvell"/>
	<updated>2026-06-04T08:48:36Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.39.1</generator>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%97%D0%B0%D0%BF%D1%83%D1%81%D0%BA_%D0%BB%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0&amp;diff=36641</id>
		<title>Запуск локального сервера</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%97%D0%B0%D0%BF%D1%83%D1%81%D0%BA_%D0%BB%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0&amp;diff=36641"/>
		<updated>2024-12-14T07:53:01Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Дополнение к правкам и актуализации гайда по запуску локального сервера&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Судя по тому, что вы сюда попали, то вы либо хотите запустить локальный сервер, либо вы просто любознательны и желаете узнать новое. Начнем с простого - что это такое&lt;br /&gt;
&lt;br /&gt;
==Видеогайд по запуску локального сервера==&lt;br /&gt;
‎&amp;lt;youtube width=&amp;quot;540&amp;quot; height=&amp;quot;280&amp;quot;&amp;gt;Lx-b77NBM8Q&amp;lt;/youtube&amp;gt;&lt;br /&gt;
==Локальный сервер==&lt;br /&gt;
Локальный сервер, или же на сленге &amp;quot;Локалка&amp;quot; - это сервер Space Station, запущенный на вашей локальной машине. Причин для его запуска может быть множество -  от изучения функционала игры, тренировки навыка охоты на мегафауну, подрыва лимиток ... вплоть до вызова лорда Сингуло. Последовательность запуска ниже, представлена для билда &#039;&#039;&#039;[https://github.com/ss220-space/Paradise Paradise SS1984]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Приготовления\компиляция==&lt;br /&gt;
# [https://github.com/ss220-space/Paradise/archive/refs/heads/master220.zip &#039;&#039;&#039;Скачайте билд Paradise SS1984&#039;&#039;&#039;] (скачивание начнется сразу после нажатия на ссылку)&lt;br /&gt;
# После завершения скачивания, разархивируйте в любое удобное вам место.&lt;br /&gt;
# Зайдите в разархивированную вами папку. Найдите папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt; и зайдите в неё. Там будет папка с названием &amp;lt;code&amp;gt;example&amp;lt;/code&amp;gt;, зайдите в неё. Скопируйте все файлы оттуда назад, в папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt;. Если этого &#039;&#039;&#039;не сделать&#039;&#039;&#039; ваш персонаж будет &amp;lt;u&amp;gt;слишком&amp;lt;/u&amp;gt; быстро перемещаться, и по ходу игры могут возникнуть некоторые иные проблемы.&lt;br /&gt;
# Найдите, в основной папке, файл &amp;lt;code&amp;gt;paradise.dme&amp;lt;/code&amp;gt;, откройте его. Через некоторое время откроется Dream Maker.&lt;br /&gt;
# Для задания карты помимо Кибериады: зайдите в папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt;. В ней найдите &amp;lt;code&amp;gt;config.txt&amp;lt;/code&amp;gt;. Нажмите &amp;lt;code&amp;gt;CTRL + F&amp;lt;/code&amp;gt; и введите &amp;lt;code&amp;gt;Default server map&amp;lt;/code&amp;gt;. Укажите необходимую карту по умолчанию написав после &amp;lt;code&amp;gt;DEFAULT_MAP /datum/map/&amp;lt;/code&amp;gt; одно из значений: &amp;lt;code&amp;gt;cyberiad&amp;lt;/code&amp;gt; (Кибериада), &amp;lt;code&amp;gt;delta&amp;lt;/code&amp;gt; (Керберос), &amp;lt;code&amp;gt;cerestation&amp;lt;/code&amp;gt; (Фаррагус), &amp;lt;code&amp;gt;celestation&amp;lt;/code&amp;gt;(Селестион, Multi-Z), &amp;lt;code&amp;gt;nova&amp;lt;/code&amp;gt;(Нова, Multi-Z). Сохраните документ нажав &amp;lt;code&amp;gt;CTRL + S&amp;lt;/code&amp;gt;.&amp;lt;br&amp;gt;Смена карты на уже запущенном сервере происходит через права администратора во вкладке &amp;lt;code&amp;gt;Server&amp;lt;/code&amp;gt; кнопка &amp;lt;code&amp;gt;Select next map&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Теперь нажмите в верхнем меню &amp;lt;code&amp;gt;Build&amp;lt;/code&amp;gt; → &amp;lt;code&amp;gt;Compile&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Подождите окончания компиляции, это займет несколько минут.&lt;br /&gt;
#Если всё вышеперечисленное сделано вами было верно, то в конце журнала вы увидите: &amp;lt;pre&amp;gt;paradise.dmb - 0 errors, 0 warnings&amp;lt;/pre&amp;gt;В этом случае можно приступать к дальнейшему запуску.&lt;br /&gt;
&lt;br /&gt;
==Сохранение в базе данных ==&lt;br /&gt;
В случае, если вы хотите избежать сбрасывания настроек при каждом запуске, смотрите &#039;&#039;&#039;[https://wiki.ss220.space/index.php/Настройка_базы_данных руководство по настройке тут].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Запуск==&lt;br /&gt;
[[Файл:Dream Daemon.png|обрамить|Dream Daemon]]Одиночная игра, сервер отключается после выхода&lt;br /&gt;
&lt;br /&gt;
# В верхнем меню, там где нажимали кнопку компиляции, нажмите Run, или Ctrl+R. Вы сразу попадете в игру.&lt;br /&gt;
&lt;br /&gt;
Выделенный сервер, не отключается после выхода игроков.&lt;br /&gt;
#Найдите &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt;, через меню «Пуск» (если вы уже установили BYOND, то Dream Daemon также у вас установлен вместе с ним) и запустите его.&lt;br /&gt;
#Нажмите на &amp;lt;code&amp;gt;File&amp;lt;/code&amp;gt; → &amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt;. Вам откроется проводник — найдите папку (Paradise-master220) в которую вы разархивировали билд, найдите в ней файл &amp;lt;code&amp;gt;paradise.dmb&amp;lt;/code&amp;gt;, выберите его, подтвердите выбор.&lt;br /&gt;
#Подождите пару секунд, пока Dream Daemon его загрузит.&lt;br /&gt;
#Переключите Security в режим Trusted, иначе игра будет спрашивать вас о разрешении об открытии каждого файла.&lt;br /&gt;
#В правом нижнем углу появится зеленая кнопка GO[[File:GO.png]]. Нажмите на неё.&lt;br /&gt;
#Ожидайте запуска сервера демоном (примерно 5–20 секунд).&lt;br /&gt;
#Над кнопкой GO [[File:GO.png]] появится жёлтая кнопка со стрелочкой [[File:Join.png]] — нажмите её, чтобы зайти на сервер.&lt;br /&gt;
#Всё. Вы получили ваш собственный сервер!&lt;br /&gt;
#Чтобы выключить сервер — нажмите на красную кнопку STOP [[File:STOP.png]]&lt;br /&gt;
&lt;br /&gt;
==Администрирование==&lt;br /&gt;
Заходя на ваш сервер, вы получаете максимальные права, дающие вам все возможности администратора. Более подробно об огромном количестве возможностей (спавн предметов и тд.), что вы получите в своё распоряжение, вы можете почитать в &#039;&#039;&#039;[[Щитспавн для чайников/Admin|данном руководстве]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Запуск двух локалок на одном компьютере==&lt;br /&gt;
Редко, но может понадобится, возможность зайти на одном компьютере на две локалки сразу. Например для тестирования способностей вампира, т.к. чтобы накапливать очки для способностей вампира, нужно высасывать кровь из жертвы за которую играет человек.&lt;br /&gt;
&lt;br /&gt;
#Закройте (убейте процесс) &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Первую локалку мы запускаем через &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; , нажав желтую кнопку [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;.&lt;br /&gt;
#После того, как первая успешно загружена, сворачиваем её. Включаем BYOND, ждем загрузки.&lt;br /&gt;
#Снова открываем &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; , подключаемся через желтую кнопку [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;. Готово у вас 2 локалки.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Альтернативно&#039;&#039;&#039; можно:&lt;br /&gt;
&lt;br /&gt;
#Открыть &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;&lt;br /&gt;
#Зайти в ваш аккаунт (если вы ещё не зашли), и после зайти на сам сервер через [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt; в &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; (как обычно, т.е.).&lt;br /&gt;
#Снова открыть &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;. Далее выйти из вашего аккаунта (Logout около вашего ника)&lt;br /&gt;
#Снова нажать на [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Файл:Localka x2.png|без|мини|308x308пкс|Как выглядят две локалки на одном компьютере]]&lt;br /&gt;
&lt;br /&gt;
==Прочее==&lt;br /&gt;
&lt;br /&gt;
===Продвинутый запуск=== &lt;br /&gt;
Либо вам все равно нечего делать, либо вам интересно создать чуть-менее локальную локалку.&lt;br /&gt;
Самое первое — разберем что это за кнопки на моменте запуска&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;code&amp;gt;Port&amp;lt;/code&amp;gt;&lt;br /&gt;
:Номер порта, который Dream Daemon будет использовать для этого сервера. Если вам не нужны игроки — можете забыть об этом.&lt;br /&gt;
:;&amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;&lt;br /&gt;
::Dream Daemon случайно выберет порт.&lt;br /&gt;
;&amp;lt;code&amp;gt;Security&amp;lt;/code&amp;gt;&lt;br /&gt;
:Отвечает за собственно, безопасность. Имеет три режима  &lt;br /&gt;
:;&amp;lt;code&amp;gt;Trusted&amp;lt;/code&amp;gt;&lt;br /&gt;
::Никакой защиты. Рекомендуется лишь на локалках, где вы единственный игрок/все остальные ваши друзья.&lt;br /&gt;
:;&amp;lt;code&amp;gt;Safe&amp;lt;/code&amp;gt;&lt;br /&gt;
::Стандартная защита. Лучший вариант. Рекомендуется.&lt;br /&gt;
:; &amp;lt;code&amp;gt;Ultrasafe&amp;lt;/code&amp;gt;&lt;br /&gt;
::Максимальная защита! Постоянные запросы &#039;&#039;«Вы разрешаете получить доступ к НАЗВАНИЕ_ФАЙЛА?»&#039;&#039;. Настоятельно не рекомендуется.&lt;br /&gt;
; &amp;lt;code&amp;gt;Visibility&amp;lt;/code&amp;gt;&lt;br /&gt;
:Отвечает за отображение сервера в хабе и иных местах. Имеет три режима:&lt;br /&gt;
:;&amp;lt;code&amp;gt;Public&amp;lt;/code&amp;gt;&lt;br /&gt;
::Локалка видна в хабе Space Station (без [[#Отображение_в_хабе|ОСОБЫХ УХИЩРЕНИЙ]] не сработает!)&lt;br /&gt;
:;&amp;lt;code&amp;gt;Private&amp;lt;/code&amp;gt;&lt;br /&gt;
::Приватный режим. Ваши друзья в Byond смогут увидеть этот сервер, но все остальные — нет.&lt;br /&gt;
:;&amp;lt;code&amp;gt;Invisible&amp;lt;/code&amp;gt;&lt;br /&gt;
::Режим скрытности. Рекомендуется для одиночных тестирований. Никто не видит ваш сервер, но подключение через ссылку по прежнему работает.&lt;br /&gt;
&lt;br /&gt;
=== Отображение в хабе===&lt;br /&gt;
&lt;br /&gt;
Изначально ваш сервер не будет виден в хабе, даже если ваши порты открыты и режим &amp;lt;code&amp;gt;Public&amp;lt;/code&amp;gt;. Это связано с тем, что изначально ваш сервер «Закрыт». Впрочем, это достаточно легко исправить, если вам это нужно.&lt;br /&gt;
&lt;br /&gt;
Вот инструкция&lt;br /&gt;
&lt;br /&gt;
#Зайдите в папку с билдом. Найдите папку &amp;lt;code&amp;gt;Config&amp;lt;/code&amp;gt;, откройте её.&lt;br /&gt;
# Найдите в этой папке текстовый файл &amp;lt;code&amp;gt;config.txt&amp;lt;/code&amp;gt;. Откройте его используя что-то для просмотра кода (например Visual Studio Code, сам Dream Maker или что-то в этом духе).&lt;br /&gt;
#Используя поиск (&amp;lt;kbd&amp;gt;Ctrl +&amp;lt;/kbd&amp;gt; А или же &amp;lt;kbd&amp;gt;Ctrl + F&amp;lt;/kbd&amp;gt;) найдите &amp;lt;code&amp;gt;MEDAL_HUB_ADDRESS&amp;lt;/code&amp;gt;. Удалите около него (ЛИШЬ ОКОЛО НЕГО) &amp;lt;code&amp;gt;#&amp;lt;/code&amp;gt;, и запишите собственно название. Выше него будет описано, как его сделать, но если просто — придумайте что-то в духе &amp;lt;code&amp;gt;Hubmakerckey.Hubname&amp;lt;/code&amp;gt;, т. е. например &amp;lt;code&amp;gt;Honkhonkhonk.SS13&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Используя поиск, найдите &amp;lt;code&amp;gt;MEDAL_HUB_PASSWORD&amp;lt;/code&amp;gt;. Несмотря на название, это не совсем пароль. Это условное обозначение сервера, его настроить можно так: &amp;lt;code&amp;gt;3qb77RnAX0&amp;lt;/code&amp;gt;. Можете использовать его так, или использовать собственный &amp;lt;code&amp;gt;MEDAL_HUB_PASSWORD&amp;lt;/code&amp;gt;. Также уберите &amp;lt;code&amp;gt;#&amp;lt;/code&amp;gt; около него.&lt;br /&gt;
&lt;br /&gt;
P.S. Возможно это НЕ сработает. Во первых — это актуально лишь для Paradise, на других серверах по иному, а во-вторых это может быть просто не правильно. Правильность все ещё уточняется, да.&lt;br /&gt;
==Запуск по кодерски==&lt;br /&gt;
Существует способ который позволит вам сразу скомпилировать билд и запустить вашу локалку для одного компьютера. Это полезно, если вам не нужен вторая локалка на одном компьютере для тестов, вы тестируете новые значения внесенные в код, вам нужно быстро зайти и проверить то что вы сделали, без нажатия на лишние кнопки и муторного запуска Dream Daemon. &amp;lt;br&amp;gt;&lt;br /&gt;
Для этого вам понадобится [[paradise:Руководство_по_разработке#Устанавливаем_и_настраиваем_Visual_Studio_Code|Visual Studio Code (VSC)]]&lt;br /&gt;
&lt;br /&gt;
После прохождения гайда по установке VSC, обязательно проверьте:&lt;br /&gt;
#Не выдает ли VSC никаких ошибок при открытии билда&lt;br /&gt;
#Скачали ли вы все предложенные плагины для работы с DM (для быстрой работы с кодом)&lt;br /&gt;
#Перенесли ли вы все файлы конфигов из папки &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; в папку &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt; (для нормализации скорости и кнопочек)&lt;br /&gt;
#Вписали ли вы свой сикей в конфиг админов (иначе вы не сможете пользоваться кнопочками)&lt;br /&gt;
#Отсутствие запущенного Dream Daemon (иначе могут появляться ошибки с иконками)&lt;br /&gt;
#Запущенный BYOND (чтобы игра видела ваш сикей и дала кнопочки)&lt;br /&gt;
&lt;br /&gt;
Как только все пункты пройдены и вы уверены что всё отлично, вы можете запустить вашу персональную локалку нажатием всего одной клавиши: &#039;&#039;&#039;F5&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Либо же лично запустить отладку:&lt;br /&gt;
&lt;br /&gt;
[[File:Otladka.png]]&lt;br /&gt;
&lt;br /&gt;
==У меня на локалке 2 карты или поломан свет==&lt;br /&gt;
#В Dream maker уберите отметки со всех файлов с форматом .dmm &lt;br /&gt;
[[Файл:No ticks on dmm files.png|мини|Пример. Отмеченных галками не должно быть для файлов с форматом .dmm]]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%97%D0%B0%D0%BF%D1%83%D1%81%D0%BA_%D0%BB%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0&amp;diff=36640</id>
		<title>Запуск локального сервера</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%97%D0%B0%D0%BF%D1%83%D1%81%D0%BA_%D0%BB%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0&amp;diff=36640"/>
		<updated>2024-12-14T07:47:29Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Судя по тому, что вы сюда попали, то вы либо хотите запустить локальный сервер, либо вы просто любознательны и желаете узнать новое. Начнем с простого - что это такое&lt;br /&gt;
&lt;br /&gt;
==Видеогайд по запуску локального сервера==&lt;br /&gt;
‎&amp;lt;youtube width=&amp;quot;540&amp;quot; height=&amp;quot;280&amp;quot;&amp;gt;Lx-b77NBM8Q&amp;lt;/youtube&amp;gt;&lt;br /&gt;
==Локальный сервер==&lt;br /&gt;
Локальный сервер, или же на сленге &amp;quot;Локалка&amp;quot; - это сервер Space Station, запущенный на вашей локальной машине. Причин для его запуска может быть множество -  от изучения функционала игры, тренировки навыка охоты на мегафауну, подрыва лимиток ... вплоть до вызова лорда Сингуло. Последовательность запуска ниже, представлена для билда &#039;&#039;&#039;[https://github.com/ss220-space/Paradise Paradise SS1984]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Приготовления\компиляция==&lt;br /&gt;
# [https://github.com/ss220-space/Paradise/archive/refs/heads/master220.zip &#039;&#039;&#039;Скачайте билд Paradise SS220&#039;&#039;&#039;] (скачивание начнется сразу после нажатия на ссылку)&lt;br /&gt;
# После завершения скачивания, разархивируйте в любое удобное вам место.&lt;br /&gt;
# Зайдите в разархивированную вами папку. Найдите папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt; и зайдите в неё. Там будет папка с названием &amp;lt;code&amp;gt;example&amp;lt;/code&amp;gt;, зайдите в неё. Скопируйте все 18 файлов из этой папки назад, в папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt;. Если этого &#039;&#039;&#039;не сделать&#039;&#039;&#039; ваш персонаж будет &amp;lt;u&amp;gt;слишком&amp;lt;/u&amp;gt; быстро перемещаться, и по ходу игры могут возникнуть некоторые иные проблемы.&lt;br /&gt;
# Найдите, в основной папке, файл &amp;lt;code&amp;gt;paradise.dme&amp;lt;/code&amp;gt;, откройте его. Через некоторое время откроется Dream Maker.&lt;br /&gt;
# Для задания карты помимо Кибериады: зайдите в папку &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt;. В ней найдите &amp;lt;code&amp;gt;config.txt&amp;lt;/code&amp;gt;. Нажмите &amp;lt;code&amp;gt;CTRL + F&amp;lt;/code&amp;gt; и введите &amp;lt;code&amp;gt;Default server map&amp;lt;/code&amp;gt;. Укажите необходимую карту по умолчанию написав после &amp;lt;code&amp;gt;DEFAULT_MAP /datum/map/&amp;lt;/code&amp;gt; одно из значений: &amp;lt;code&amp;gt;cyberiad&amp;lt;/code&amp;gt; (Кибериада), &amp;lt;code&amp;gt;delta&amp;lt;/code&amp;gt; (Керберос), &amp;lt;code&amp;gt;cerestation&amp;lt;/code&amp;gt; (Фаррагус), &amp;lt;code&amp;gt;celestation&amp;lt;/code&amp;gt;(Селестион, Multi-Z), &amp;lt;code&amp;gt;nova&amp;lt;/code&amp;gt;(Нова, Multi-Z). Сохраните документ нажав &amp;lt;code&amp;gt;CTRL + S&amp;lt;/code&amp;gt;.&amp;lt;br&amp;gt;Смена карты на уже запущенном сервере происходит через права администратора во вкладке &amp;lt;code&amp;gt;Server&amp;lt;/code&amp;gt; кнопка &amp;lt;code&amp;gt;Select next map&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Теперь нажмите в верхнем меню &amp;lt;code&amp;gt;Build&amp;lt;/code&amp;gt; → &amp;lt;code&amp;gt;Compile&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Подождите окончания компиляции, это займет несколько минут.&lt;br /&gt;
#Если всё вышеперечисленное сделано вами было верно, то в конце журнала вы увидите: &amp;lt;pre&amp;gt;paradise.dmb - 0 errors, 0 warnings&amp;lt;/pre&amp;gt;В этом случае можно приступать к дальнейшему запуску.&lt;br /&gt;
&lt;br /&gt;
==Сохранение в базе данных ==&lt;br /&gt;
В случае, если вы хотите избежать сбрасывания настроек при каждом запуске, смотрите &#039;&#039;&#039;[https://wiki.ss220.space/index.php/Настройка_базы_данных руководство по настройке тут].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Запуск==&lt;br /&gt;
[[Файл:Dream Daemon.png|обрамить|Dream Daemon]]Одиночная игра, сервер отключается после выхода&lt;br /&gt;
&lt;br /&gt;
# В верхнем меню, там где нажимали кнопку компиляции, нажмите Run, или Ctrl+R. Вы сразу попадете в игру.&lt;br /&gt;
&lt;br /&gt;
Выделенный сервер, не отключается после выхода игроков.&lt;br /&gt;
#Найдите &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt;, через меню «Пуск» (если вы уже установили BYOND, то Dream Daemon также у вас установлен вместе с ним) и запустите его.&lt;br /&gt;
#Нажмите на &amp;lt;code&amp;gt;File&amp;lt;/code&amp;gt; → &amp;lt;code&amp;gt;Open&amp;lt;/code&amp;gt;. Вам откроется проводник — найдите папку (Paradise-master220) в которую вы разархивировали билд, найдите в ней файл &amp;lt;code&amp;gt;paradise.dmb&amp;lt;/code&amp;gt;, выберите его, подтвердите выбор.&lt;br /&gt;
#Подождите пару секунд, пока Dream Daemon его загрузит.&lt;br /&gt;
#Переключите Security в режим Trusted, иначе игра будет спрашивать вас о разрешении об открытии каждого файла.&lt;br /&gt;
#В правом нижнем углу появится зеленая кнопка GO[[File:GO.png]]. Нажмите на неё.&lt;br /&gt;
#Ожидайте запуска сервера демоном (примерно 5–20 секунд).&lt;br /&gt;
#Над кнопкой GO [[File:GO.png]] появится жёлтая кнопка со стрелочкой [[File:Join.png]] — нажмите её, чтобы зайти на сервер.&lt;br /&gt;
#Всё. Вы получили ваш собственный сервер!&lt;br /&gt;
#Чтобы выключить сервер — нажмите на красную кнопку STOP [[File:STOP.png]]&lt;br /&gt;
&lt;br /&gt;
==Администрирование==&lt;br /&gt;
Заходя на ваш сервер, вы получаете максимальные права, дающие вам все возможности администратора. Более подробно об огромном количестве возможностей (спавн предметов и тд.), что вы получите в своё распоряжение, вы можете почитать в &#039;&#039;&#039;[[Щитспавн для чайников/Admin|данном руководстве]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Запуск двух локалок на одном компьютере==&lt;br /&gt;
Редко, но может понадобится, возможность зайти на одном компьютере на две локалки сразу. Например для тестирования способностей вампира, т.к. чтобы накапливать очки для способностей вампира, нужно высасывать кровь из жертвы за которую играет человек.&lt;br /&gt;
&lt;br /&gt;
#Закройте (убейте процесс) &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Первую локалку мы запускаем через &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; , нажав желтую кнопку [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;.&lt;br /&gt;
#После того, как первая успешно загружена, сворачиваем её. Включаем BYOND, ждем загрузки.&lt;br /&gt;
#Снова открываем &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; , подключаемся через желтую кнопку [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;. Готово у вас 2 локалки.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Альтернативно&#039;&#039;&#039; можно:&lt;br /&gt;
&lt;br /&gt;
#Открыть &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;&lt;br /&gt;
#Зайти в ваш аккаунт (если вы ещё не зашли), и после зайти на сам сервер через [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt; в &amp;lt;code&amp;gt;Dream Daemon&amp;lt;/code&amp;gt; (как обычно, т.е.).&lt;br /&gt;
#Снова открыть &amp;lt;code&amp;gt;BYOND&amp;lt;/code&amp;gt;. Далее выйти из вашего аккаунта (Logout около вашего ника)&lt;br /&gt;
#Снова нажать на [[File:Join.png]] &amp;lt;code&amp;gt;Join&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Файл:Localka x2.png|без|мини|308x308пкс|Как выглядят две локалки на одном компьютере]]&lt;br /&gt;
&lt;br /&gt;
==Прочее==&lt;br /&gt;
&lt;br /&gt;
===Продвинутый запуск=== &lt;br /&gt;
Либо вам все равно нечего делать, либо вам интересно создать чуть-менее локальную локалку.&lt;br /&gt;
Самое первое — разберем что это за кнопки на моменте запуска&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;code&amp;gt;Port&amp;lt;/code&amp;gt;&lt;br /&gt;
:Номер порта, который Dream Daemon будет использовать для этого сервера. Если вам не нужны игроки — можете забыть об этом.&lt;br /&gt;
:;&amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;&lt;br /&gt;
::Dream Daemon случайно выберет порт.&lt;br /&gt;
;&amp;lt;code&amp;gt;Security&amp;lt;/code&amp;gt;&lt;br /&gt;
:Отвечает за собственно, безопасность. Имеет три режима  &lt;br /&gt;
:;&amp;lt;code&amp;gt;Trusted&amp;lt;/code&amp;gt;&lt;br /&gt;
::Никакой защиты. Рекомендуется лишь на локалках, где вы единственный игрок/все остальные ваши друзья.&lt;br /&gt;
:;&amp;lt;code&amp;gt;Safe&amp;lt;/code&amp;gt;&lt;br /&gt;
::Стандартная защита. Лучший вариант. Рекомендуется.&lt;br /&gt;
:; &amp;lt;code&amp;gt;Ultrasafe&amp;lt;/code&amp;gt;&lt;br /&gt;
::Максимальная защита! Постоянные запросы &#039;&#039;«Вы разрешаете получить доступ к НАЗВАНИЕ_ФАЙЛА?»&#039;&#039;. Настоятельно не рекомендуется.&lt;br /&gt;
; &amp;lt;code&amp;gt;Visibility&amp;lt;/code&amp;gt;&lt;br /&gt;
:Отвечает за отображение сервера в хабе и иных местах. Имеет три режима:&lt;br /&gt;
:;&amp;lt;code&amp;gt;Public&amp;lt;/code&amp;gt;&lt;br /&gt;
::Локалка видна в хабе Space Station (без [[#Отображение_в_хабе|ОСОБЫХ УХИЩРЕНИЙ]] не сработает!)&lt;br /&gt;
:;&amp;lt;code&amp;gt;Private&amp;lt;/code&amp;gt;&lt;br /&gt;
::Приватный режим. Ваши друзья в Byond смогут увидеть этот сервер, но все остальные — нет.&lt;br /&gt;
:;&amp;lt;code&amp;gt;Invisible&amp;lt;/code&amp;gt;&lt;br /&gt;
::Режим скрытности. Рекомендуется для одиночных тестирований. Никто не видит ваш сервер, но подключение через ссылку по прежнему работает.&lt;br /&gt;
&lt;br /&gt;
=== Отображение в хабе===&lt;br /&gt;
&lt;br /&gt;
Изначально ваш сервер не будет виден в хабе, даже если ваши порты открыты и режим &amp;lt;code&amp;gt;Public&amp;lt;/code&amp;gt;. Это связано с тем, что изначально ваш сервер «Закрыт». Впрочем, это достаточно легко исправить, если вам это нужно.&lt;br /&gt;
&lt;br /&gt;
Вот инструкция&lt;br /&gt;
&lt;br /&gt;
#Зайдите в папку с билдом. Найдите папку &amp;lt;code&amp;gt;Config&amp;lt;/code&amp;gt;, откройте её.&lt;br /&gt;
# Найдите в этой папке текстовый файл &amp;lt;code&amp;gt;config.txt&amp;lt;/code&amp;gt;. Откройте его используя что-то для просмотра кода (например Visual Studio Code, сам Dream Maker или что-то в этом духе).&lt;br /&gt;
#Используя поиск (&amp;lt;kbd&amp;gt;Ctrl +&amp;lt;/kbd&amp;gt; А или же &amp;lt;kbd&amp;gt;Ctrl + F&amp;lt;/kbd&amp;gt;) найдите &amp;lt;code&amp;gt;MEDAL_HUB_ADDRESS&amp;lt;/code&amp;gt;. Удалите около него (ЛИШЬ ОКОЛО НЕГО) &amp;lt;code&amp;gt;#&amp;lt;/code&amp;gt;, и запишите собственно название. Выше него будет описано, как его сделать, но если просто — придумайте что-то в духе &amp;lt;code&amp;gt;Hubmakerckey.Hubname&amp;lt;/code&amp;gt;, т. е. например &amp;lt;code&amp;gt;Honkhonkhonk.SS13&amp;lt;/code&amp;gt;.&lt;br /&gt;
#Используя поиск, найдите &amp;lt;code&amp;gt;MEDAL_HUB_PASSWORD&amp;lt;/code&amp;gt;. Несмотря на название, это не совсем пароль. Это условное обозначение сервера, его настроить можно так: &amp;lt;code&amp;gt;3qb77RnAX0&amp;lt;/code&amp;gt;. Можете использовать его так, или использовать собственный &amp;lt;code&amp;gt;MEDAL_HUB_PASSWORD&amp;lt;/code&amp;gt;. Также уберите &amp;lt;code&amp;gt;#&amp;lt;/code&amp;gt; около него.&lt;br /&gt;
&lt;br /&gt;
P.S. Возможно это НЕ сработает. Во первых — это актуально лишь для Paradise, на других серверах по иному, а во-вторых это может быть просто не правильно. Правильность все ещё уточняется, да.&lt;br /&gt;
==Запуск по кодерски==&lt;br /&gt;
Существует способ который позволит вам сразу скомпилировать билд и запустить вашу локалку для одного компьютера. Это полезно, если вам не нужен вторая локалка на одном компьютере для тестов, вы тестируете новые значения внесенные в код, вам нужно быстро зайти и проверить то что вы сделали, без нажатия на лишние кнопки и муторного запуска Dream Daemon. &amp;lt;br&amp;gt;&lt;br /&gt;
Для этого вам понадобится [[paradise:Руководство_по_разработке#Устанавливаем_и_настраиваем_Visual_Studio_Code|Visual Studio Code (VSC)]]&lt;br /&gt;
&lt;br /&gt;
После прохождения гайда по установке VSC, обязательно проверьте:&lt;br /&gt;
#Не выдает ли VSC никаких ошибок при открытии билда&lt;br /&gt;
#Скачали ли вы все предложенные плагины для работы с DM (для быстрой работы с кодом)&lt;br /&gt;
#Перенесли ли вы все файлы конфигов из папки &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; в папку &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt; (для нормализации скорости и кнопочек)&lt;br /&gt;
#Вписали ли вы свой сикей в конфиг админов (иначе вы не сможете пользоваться кнопочками)&lt;br /&gt;
#Отсутствие запущенного Dream Daemon (иначе могут появляться ошибки с иконками)&lt;br /&gt;
#Запущенный BYOND (чтобы игра видела ваш сикей и дала кнопочки)&lt;br /&gt;
&lt;br /&gt;
Как только все пункты пройдены и вы уверены что всё отлично, вы можете запустить вашу персональную локалку нажатием всего одной клавиши: &#039;&#039;&#039;F5&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Либо же лично запустить отладку:&lt;br /&gt;
&lt;br /&gt;
[[File:Otladka.png]]&lt;br /&gt;
&lt;br /&gt;
==У меня на локалке 2 карты или поломан свет==&lt;br /&gt;
#В Dream maker уберите отметки со всех файлов с форматом .dmm &lt;br /&gt;
[[Файл:No ticks on dmm files.png|мини|Пример. Отмеченных галками не должно быть для файлов с форматом .dmm]]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:No_ticks_on_dmm_files.png&amp;diff=36639</id>
		<title>Файл:No ticks on dmm files.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:No_ticks_on_dmm_files.png&amp;diff=36639"/>
		<updated>2024-12-14T07:44:17Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Отсутствие отметок на dmm файлах в Dream Maker&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=34834</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=34834"/>
		<updated>2024-03-23T09:21:04Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Обновление инструкции по установке ПО для работы с TGUI&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code для удобного редактирования и отладки кода.]]&lt;br /&gt;
* [[#Установка и настройка Github|Настройка GitHub для начала работы с билдом.]]&lt;br /&gt;
&lt;br /&gt;
=== Взаимодействие с Git === &lt;br /&gt;
* [[#Настройка и использование Github Desktop|Установка и использование Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|(Альтернативно) Установка и использование TortoiseGit (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Форк кода Парадайза|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Форк кода Парадайза|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;bugfix: Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
tweak: усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
Старайтесь вкратце, желательно на английском, делать заголовок Pull Request&#039;а.&lt;br /&gt;
Название заголовка есть &amp;quot;тег: краткое описание&amp;quot;, например: &#039;&#039;&#039;bugfix: now table climbs do not cause server crash&#039;&#039;&#039;.&lt;br /&gt;
В данный момент журнал изменений отображается внтури игры. Там Вы, и любой другой игрок, можете ознакомиться с обновлениями.&lt;br /&gt;
&lt;br /&gt;
Какие теги ставить перед Вашим PR:&lt;br /&gt;
* bugfix: если Вы исправили некий баг&lt;br /&gt;
* add: если Вы добавили новую фичу&lt;br /&gt;
* imageadd: если просто поменяли спрайты, без затрагивания кода&lt;br /&gt;
* soundadd: если просто добавили новые звуки, без затрагивания кода&lt;br /&gt;
* tweak: если Вы сделали незначительную правку (например изменили одно число на другое)&lt;br /&gt;
* balance: то же что и tweak, но когда изменений множество&lt;br /&gt;
* refactor: если Вы полностью переписали старый код, улучшив его, НО не изменив функционал&lt;br /&gt;
* qol: если Ваше изменение не влияет на баланс, а только улучшает взаимодействие между игрой и игроком&lt;br /&gt;
* wip: если Ваш PR в драфте и планируется длительная разработка (можно не ставить)&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Как сделать хорошую демонстрацию изменений===&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Форк кода Парадайза|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Форк кода Парадайза|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Нажмите ПКМ по рабочей папке. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Задайте &#039;&#039;&#039;Local&#039;&#039;&#039; и &#039;&#039;&#039;Remote&#039;&#039;&#039; имя ветки, в которую вы совершили коммиты ранее (например My_First_Branch)&lt;br /&gt;
* Под Destination, задайте Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Это отправит изменения на удаленный репозиторий (На гитхабе).&lt;br /&gt;
* Зайдите в свой репозиторий (пример https://github.com/NAME/Paradise)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Pull Request&#039;&#039;&#039; справа сверху.&lt;br /&gt;
* Создайте Pull Request, следуя инструкциям из пресозданного шаблона.&lt;br /&gt;
* Получилось! Во многих случаях будут обнаружены ошибки, которые будут выделены другими участниками сообщества, merge-conflict&#039;ы и другие вещи, что заставит Вас посещать Pull Request вновь.&lt;br /&gt;
* Опционально, загляните в раздел Clean Commits для руководства по чистым коммитам, &#039;&#039;&#039;которые помогают мейнтейнерам легче проводить ревью!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS последней версии https://nodejs.org/en/download/&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%B5%D0%B4%D0%B5_%D0%B8_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B0%D0%BC/%D0%A0%D0%B5%D1%86%D0%B5%D0%BF%D1%82%D1%8B_%D0%91%D1%83%D1%82%D1%8B%D0%BB%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D1%8B&amp;diff=33455</id>
		<title>Руководство по еде и напиткам/Рецепты Бутылочницы</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%B5%D0%B4%D0%B5_%D0%B8_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B0%D0%BC/%D0%A0%D0%B5%D1%86%D0%B5%D0%BF%D1%82%D1%8B_%D0%91%D1%83%D1%82%D1%8B%D0%BB%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D1%8B&amp;diff=33455"/>
		<updated>2023-11-27T14:04:45Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Баг с невозможностью сделать отравленный вариант был исправлен&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;top&amp;quot;&lt;br /&gt;
!Название&lt;br /&gt;
!Рецепт&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Яблопокалипсис&#039;&#039;&#039; (Apple-pocalypse)&lt;br /&gt;
|Apple, Apple, Apple&lt;br /&gt;
|Если бы Судный день проходил в виде фруктов, то это, вероятно, были бы яблоки. С шансом в 1% мощная отрыжка растолкает вещи в радиусе 2 тайлов.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Забаненный плод&#039;&#039;&#039; (Berry Banned)&lt;br /&gt;
|Berries, Berries, Berries&lt;br /&gt;
|Ощути пермабан. Незначительно исцеляет физический/ожоговый/токсиновый урон и урон мозгу.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Забаненный плод&#039;&#039;&#039; (Berry Banned)&lt;br /&gt;
|Poison Berries, Poison Berries, Poison Berries&lt;br /&gt;
|Альтернативный рецепт. В отличии от своего аналога, не лечит, а наносит урон токсинами.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Черноглазое варево&#039;&#039;&#039; (Blackeye Brew)&lt;br /&gt;
|Cola, Sugar Cane, Ice Cream&lt;br /&gt;
|Сливочный, мягкий вкус, совсем как у лысых голов. Предположительно в возрасте 30 лет. 25% шанс выкрикнуть «Грейтайдовую» фразу.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Виноградный взрыв&#039;&#039;&#039; (Grape Granade)&lt;br /&gt;
|Grape Juice, Grapes, Flash&lt;br /&gt;
|Взрывается с виноградным ароматом и является фаворитом среди членов [[Отряд быстрого реагирования|ОБР]] по всей системе. Имеет шанс в 1% притянуть все вещи в радиусе 3 тайлов.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Метеорный солод&#039;&#039;&#039; (Meteor Malt)&lt;br /&gt;
|Unrefined Ore, Wheat, Unrefined Ore&lt;br /&gt;
|Безалкогольные напитки были обнаружены на пути столкновения с вашими вкусовыми рецепторами. С шансом в 25% трясёт экран и с шансом в 5% вводит в организм небольшую дозу случайной руды.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Райский удар&#039;&#039;&#039; (Paradise Punch)&lt;br /&gt;
|Grapes, Banana, Cherries&lt;br /&gt;
|Вкус именно такой, как вы думаете. Райский. Если вы сможете разлить этот напиток по бутылкам.&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;Мунлин двойной перегонки&#039;&#039;&#039; (Moon&#039;drin)&lt;br /&gt;
|Moonlight, Moonlight, Moonlight&lt;br /&gt;
|Алкогольный мятный вкус, который так полюбился многим таярам. Используется в коктейлях.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%98%D0%BC%D0%BF%D0%BB%D0%B0%D0%BD%D1%82%D1%8B&amp;diff=33267</id>
		<title>Импланты</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%98%D0%BC%D0%BF%D0%BB%D0%B0%D0%BD%D1%82%D1%8B&amp;diff=33267"/>
		<updated>2023-11-02T13:59:29Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Корректировка описания улучшенного кибернетического сердца в соответствии с кодом импланта. Файл https://github.com/ss220-space/Paradise/blob/master220/code/modules/surgery/organs/heart.dm Код - /obj/item/organ/internal/heart/cybernetic/upgraded/on_life()&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Видеогайд по имплантам==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube width=&amp;quot;450&amp;quot; height=&amp;quot;250&amp;quot;&amp;gt;LhSv14PLP2g&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Импланты NanoTrasen==&lt;br /&gt;
&lt;br /&gt;
Высокотехнологические импланты, использование которых одобрило руководство [[NanoTrasen]].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;items-table implants colors-Command&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Предмет&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Место установки&lt;br /&gt;
! Описание&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант «Щит разума»|Mindshield Implant}} Имплант «Щит разума»&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Mindshield Implant|Mindshield Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Те, кто имеет установленный имплант «Щит разума», защищены от «промывки мозгов». [[культист|Культ Нар’Си]], [[революция|революционеры]], или [[вампир]]ы уже не смогут завербовать и использовать вас в своё благо.&lt;br /&gt;
&lt;br /&gt;
Данные должности на станции, по официальному прибытию с ЦК (не после назначения через [[ГП|Главу персонала]]) получают уже установленный имплант «Щит разума»&lt;br /&gt;
&lt;br /&gt;
*[[Капитан]]&lt;br /&gt;
*[[Глава службы безопасности]]&lt;br /&gt;
*[[Смотритель]]&lt;br /&gt;
*[[Детектив]]&lt;br /&gt;
*[[Офицер службы безопасности]]&lt;br /&gt;
*[[Пилот челнока службы безопасности]]&lt;br /&gt;
*[[Врач брига]]&lt;br /&gt;
*[[Офицер «Синий щит»]]&lt;br /&gt;
*[[Магистрат]]&lt;br /&gt;
*[[Агент внутренних дел]]&lt;br /&gt;
*[[Представитель NanoTrasen]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Обратите внимание:&#039;&#039;&#039; установленный имплант только позволяет в дальнейшем предотвратить «промывание мозгов», но не отменяет существующее (исключение — [[Революция|революционеры]], которых он деконвертирует).&lt;br /&gt;
&lt;br /&gt;
Этот имплант имплантируются с помощью кейса с имплантами (&amp;lt;code&amp;gt;Implant Case&amp;lt;/code&amp;gt;) и имплантера (&amp;lt;code&amp;gt;Implanter&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Как и все импланты, он может быть [[Хирургия#Удаление_имплантов_(НЕ_ДЛЯ_СИНТЕТИКОВ)|удалён хирургическим вмешательством]], также снимая защиту от «промывки мозгов», но не возвращая её, если она была удалена им.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Химический имплант|Chemical Implant}} Химический имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Chemical Implant|Chemical Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Используется для контроля над носителем. Установленный химический имплант может ввести носителю дозу любого заранее выбранного химического вещества. Используется также консоль управления заключенными (Prisoner Management Console).&lt;br /&gt;
&lt;br /&gt;
Изначально химический имплант пуст, перед установкой необходимо попросить [[химик]]ов или [[учёный|учёных]] заполнить его.&lt;br /&gt;
&lt;br /&gt;
У импланта нет ограничений на тип вводимого химического вещества. Это может быть как [[Руководство_по_фармакологии#Эфир|эфир]] или низкие дозы [[Руководство_по_фармакологии#Морфин|морфина]] для временного оглушения, и парализации. Так и смертельные токсины, такие как [[Руководство_по_фармакологии#зарин|Зарин]], [[Руководство_по_фармакологии#Нейротоксин|нейротоксин]] или [[Руководство_по_фармакологии#цианид|цианид]]. Если вы задаётесь вопросом, какое нужно выбрать химическое вещество, то отталкивайтесь от серьёзности преступления. И всё же желательно использовать несмертельные химические вещества.&lt;br /&gt;
&lt;br /&gt;
Имплантируются с помощью кейса с имплантами (Implant Case) и имплантера (Implanter).&lt;br /&gt;
&lt;br /&gt;
Имейте ввиду, что некоторые антагонисты, использующие регенерацию химических веществ внутри своего тела (такие как — [[Вампир]]ы или [[Генокрад]]ы) смогут легко очистить или препятствовать вводимым химическим веществам.&lt;br /&gt;
&lt;br /&gt;
Как и все импланты, он может быть [[Хирургия#Удаление_имплантов_(НЕ_ДЛЯ_СИНТЕТИКОВ)|удалён хирургическим вмешательством]].&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант слежения|Tracking Implant}} Имплант слежения&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Tracking Implant|Tracking Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Используется для отслеживания положения члена экипажа. В основном для [[Стандартные_рабочие_процедуры_(Закон)#Условно-досрочное_освобождение|заключённых с УДО]].&lt;br /&gt;
&lt;br /&gt;
Чтобы проверить, где находится носитель, используйте консоль управления заключёнными (Prisoner Management Console). Одна из таких консолей находится в кабинете [[смотритель|смотрителя]], другая — рядом с шаттлом для отправки на каторгу. Если имплант активен, консоль покажет вам его местоположение. Если использовать портативное устройство отслеживания (также доступно в наборе Tracking Implant), оно выдаст вам координаты импланта.&lt;br /&gt;
&lt;br /&gt;
Использование консоли управления заключенными, также позволит отправлять сообщение тем, у кого установлен имплант отслеживания. Оно будет отображаться как телепатическое сообщение.&lt;br /&gt;
&lt;br /&gt;
Этот имплант имплантируются с помощью кейса с имплантами (Implant Case) и имплантера (Implanter).&lt;br /&gt;
&lt;br /&gt;
Как и все импланты, он может быть [[Хирургия#Удаление_имплантов_(НЕ_ДЛЯ_СИНТЕТИКОВ)|удалён хирургическим вмешательством]], также удаляя запись с консоли управления заключёнными.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант оповещения о смерти|Death Alarm Implant}} Имплант оповещения о смерти&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Death Alarm Implant|Death Alarm Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Устанавливаются командному составу [[офицер «Синий щит»|офицером «Синий щит»]].&lt;br /&gt;
&lt;br /&gt;
Имплант оповещения о смерти передают информацию о местонахождении носителя, когда его жизненные показатели перестают регистрироваться. Это позволяет быстро отреагировать персоналу, которому поручено спасение носителя, в том числе и самому [[офицер «Синий щит»|Щиту]].&lt;br /&gt;
&lt;br /&gt;
Имплант оповещения о смерти не разряжается, но при воздействии ЭМИ он выходит из строя и передаёт случайное местоположение, даже если носитель ещё жив.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант изгоя|Exile implant}} Имплант изгоя&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Exile implant|Exile implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Меняет бортовую систему [[Врата|врат]], запрещая возвращение через [[Врата]] лицам с этим имплантом.&lt;br /&gt;
&lt;br /&gt;
Обычно используется для [[Стандартные_рабочие_процедуры_(Закон)#Альтернатива:_Изгнание|изгнания преступников]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Нелегальные импланты==&lt;br /&gt;
&lt;br /&gt;
Данные импланты являются разработкой враждебных к [[NanoTrasen]] корпораций или признаны нелегальными Верховным судом NanoTrasen или уполномоченными лицами отдельного объекта NanoTrasen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Их нельзя обнаружить медицинскими сканерами!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;items-table implants colors-Antagonist&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Предмет&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Место установки&lt;br /&gt;
! Описание&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Адреналиновый имплант|Adrenaline Implant}} Адреналиновый имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Adrenaline Implant|Adrenaline Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| После установки в тело, добавляет вам иконку активации, при нажатии которой полностью снимает оглушение, замедление и восстанавливает стамину, так же вводит в вас смесь стимуляторов которые лечат вас, ускоряют и уменьшают будущие станы. Каждый имплант содержит 3 заряда. Подробнее о веществах [[Руководство_по_фармакологии#Stimulative_agent|тут]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Можно получить через [[Руководство_по_Э.К.С.П.Р.И-МЕНТОРу|исследования Э.К.С.П.Р.И-МЕНТОРа]], или же исследовав нелегальные (Illegal) технологии.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Имеет три использования, после — отключается.&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант свободы|Freedom Implant}} Имплант свободы&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Freedom Implant|Freedom Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Активация этого импланта снимает с носителя наручники, стяжки или любые другие ограничители (например, смирительную рубашку). Немного неочевидный момент — бола входит в их число. Не найдейтесь, что офицеры увидев это будут пытаться нелетально задержать вас второй раз..&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Можно получить через исследования E.X.P.E.R.I-MENTOR, или же исследовав нелегальные (Illegal) технологии.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Доступно 4 использования, после — отключается.&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант ЭМИ|EMP Implant}} Имплант ЭМИ&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#EMP Implant|EMP Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Активация этого импланта создаёт вокруг носителя электростатическое поле, после чего оно высвобождается подобно ЭМИ, отключая все камеры, уничтожая электронику консолей и компьютеров, электризуя двери. Кроме того, кибернетические части, механизированные конечности и импланты будут работать со сбоями (возможно что совсем не будут работать).&lt;br /&gt;
&lt;br /&gt;
Чрезвычайно смертельно для [[КПБ]] или любого члена экипажа с роботизированными органами или конечностями.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Имеет два заряда, после — отключается.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Более подробный [[Эффекты от ЭМИ|список целей ЭМИ]].&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант подчинения|Mindslave Implant}} Имплант подчинения&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Mindslave Implant|Mindslave Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Заставляет носителя полностью подчиняться установившему имплант, пока имплант активен. Не действует, если у члена экипажа уже установлен имплант подчинения, или [[#имплант защиты разума|имплант защиты разума]].&lt;br /&gt;
&lt;br /&gt;
Установка [[#имплант защиты разума|импланта защиты разума]] ПОСЛЕ импланта подчинения — не деактивирует имплант подчинения!&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант хранилища|Storage Implant}} Имплант хранилища&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Storage Implant|Storage Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Создаёт специальный блюспейс-карман, вмещающий до двух предметов среднего размера (Normal-Sized Item).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Носитель может получить к карману доступ через кнопку слева вверху экрана.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Подсказка — в него можно поместить в том числе коробки. А в коробку можно положить другие предметы, таким образом значительно расширив вместимость кармана.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант аплинка|Uplink Implant}} Имплант аплинка&lt;br /&gt;
&lt;br /&gt;
[[Файл:Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Uplink Implant|Uplink Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| При активации даёт носителю доступ к [[аплинк]]у с 10 телекристаллами.&lt;br /&gt;
&lt;br /&gt;
Довольно полезно, если вам не особо нужно тратить ТК для решения задачи, но при этом вы желаете иметь козырь в рукаве на случай поимки.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Кибернетические имплантаты==&lt;br /&gt;
&lt;br /&gt;
Кибернетические импланты, делающие носителя больше похожим на машину, чем на биологические существо.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;items-table implants colors-Synthetic&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Предмет&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Место установки&lt;br /&gt;
! Описание&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Антидроп|Anti-Drop Implant}} Антидроп&lt;br /&gt;
&lt;br /&gt;
[[Файл:Antidrop.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Anti-Drop Implant|Anti-Drop Implant]]&lt;br /&gt;
| Голова&lt;br /&gt;
| При активации блокирует обе руки так, что любой предмет, находящийся в ней, нельзя уронить или снять, даже будучи оглушенным, за исключением ручной деактивации импланта, ЭМИ, удаления импланта или, в крайнем случае, удаления самой конечности.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Перезапуск ЦНС|CNS Rebooter}} Перезапуск ЦНС&lt;br /&gt;
&lt;br /&gt;
[[Файл:CNS rebooter.png]]&lt;br /&gt;
&lt;br /&gt;
[[#CNS Rebooter|CNS Rebooter]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Этот имплант автоматически вернёт носителю контроль над его центральной нервной системой, сократив время стаминакрита максимум до 6 секунд, а так же восстанавливает 9 стамины, если та ниже 60. Несовместим с [[#Нейростимулятор|Нейростимулятором]]. При ЭМИ кладет в стаминакрит на 9 секунд.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Нейростимулятор|Neural Jumpstarter}} Нейростимулятор&lt;br /&gt;
&lt;br /&gt;
[[Файл:JumpStarter.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Neural Jumpstarter|Neural Jumpstarter]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Снимает весь сон и паралич у носителя, когда обнаружит, что тот потерял сознание. Имеет время восстановления в 5 секунд, несовместим с [[#Перезапуск ЦНС|Перезапуском ЦНС]]. ЭМИ кладет в сон на 200 циклов.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетические уши|Cybernetic ears}} Кибернетические уши&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cybernetic Ears.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic ears|Cybernetic ears]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Они работают как обычные уши, но получают большой урон от ЭМИ.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетические глаза|Cybernetic eyes}} Кибернетические глаза&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cyber eyes.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic eyes|Cybernetic eyes]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Они работают как обычные глаза, но получают большой урон от ЭМИ. На них также не влияют генетические эффекты, такие как дальтонизм.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант сварочной защиты|Welding Shield Implant}} Имплант сварочной защиты&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Welding Shield Implant|Welding Shield Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Эти микрощитки защищают глаза носителя от вспышек любого рода, не уменьшая обзор. Не полностью защищает, если вы носите имплант термального зрения.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант медицинского ИЛС|Medical HUD Implant}} Имплант медицинского ИЛС&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Medical HUD Implant|Medical HUD Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Полностью идентичен очкам c медицинским ИЛС (Medical HUD), позволяя не использовать их.&lt;br /&gt;
&lt;br /&gt;
Виден на портативных и стационарных медицинских сканерах.&lt;br /&gt;
&lt;br /&gt;
Меняет цвет глаз носителя на синий.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант охранного ИЛС|Security HUD Implant}} Имплант охранного ИЛС&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Security HUD Implant|Security HUD Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Полностью идентичен очкам с охранным ИЛС (Security HUD), позволяя не использовать их.&lt;br /&gt;
&lt;br /&gt;
Виден на портативных и стационарных медицинских сканерах.&lt;br /&gt;
&lt;br /&gt;
Меняет цвет глаз носителя на красный.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант мезонного сканера|Meson scanner Implant}} Имплант мезонного сканера&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Meson scanner Implant|Meson scanner Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Дают носителю возможность видеть стены и пол вне зависимости от наличия стен, повышает общую гамму зрения в темноте, полезен для [[инженер]]ов и [[шахтер]]ов.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант диагностического ИЛС|Diagnostic HUD Implant}} Имплант диагностического ИЛС&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Diagnostic HUD Implant|Diagnostic HUD Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Полностью идентичен очкам с диагностическим ИЛС (Diagnostic HUD), позволяя не использовать их.&lt;br /&gt;
&lt;br /&gt;
Виден на портативных и стационарных медицинских сканерах.&lt;br /&gt;
&lt;br /&gt;
Меняет цвет глаз носителя на коричневый.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Рентгеновский имплант|X-ray Implant}} Рентгеновский имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#X-ray Implant|X-ray Implant]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Этот имплант даст носителю рентгеновское зрение (так же, как и рентгеновский ген).&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Оптический термальный имплант|Optical Thermal Implants}} Оптический термальный имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Eye Implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Optical Thermal Implants|Optical Thermal Implants]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Этот имплант даст носителю тепловое зрение сквозь стены и прочие объекты, позволяющее видеть живых существ за ними. Увеличивает уязвимость к вспышкам для глаз.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант дыхательной трубки|Breathing Tube Implant}} Имплант дыхательной трубки&lt;br /&gt;
&lt;br /&gt;
[[Файл:Breathing tube.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Breathing Tube Implant|Breathing Tube Implant]]&lt;br /&gt;
| Рот&lt;br /&gt;
| Позволяет использовать баллоны без маски и защищает носителя от удушения руками/гарротой.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетическое сердце|Cybernetic Heart}} Кибернетическое сердце&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cybernetic heart.gif]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic Heart|Cybernetic Heart]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Электронное устройство, имитирующее функции человеческого сердца. Может остановится от воздействия ЭМИ.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Улучшенное кибернетическое сердце|Upgraded Cybernetic Heart}} Улучшенное кибернетическое сердце&lt;br /&gt;
&lt;br /&gt;
[[Файл:Upgraded Cybernetic Heart.gif]]&lt;br /&gt;
&lt;br /&gt;
[[#Upgraded Cybernetic Heart|Upgraded Cybernetic Heart]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Улучшенное сердце, которое предоставляет следующие эффекты людям(не работает на КПБ):&lt;br /&gt;
*При выявлении остановки сердца каждые 3 секунды пытается с 10% вероятностью запустить его. Перезарядка при успехе: 30 секунд.&lt;br /&gt;
*При выявлении сердечной недостаточности каждые 3 секунды пытается с вероятностью 25% исправить её. Перезарядка при успехе: 30 секунд.&lt;br /&gt;
*Убирает сон, уменьшает за цикл время (в скобках указан эффект, если сердце емагнуто):&lt;br /&gt;
** Сонливости, на 8(16) секунд.&lt;br /&gt;
** Паралича, на 2(4) секунды.&lt;br /&gt;
** Оглушения, на 2(4) секунды.&lt;br /&gt;
** Ослабления, на 2(4) секунды.&lt;br /&gt;
* Также восстанавливает 1(2, если емагнут) единиц стамины за цикл.&lt;br /&gt;
&lt;br /&gt;
Можно [[E-maggable objects|емагнуть]], чтобы удвоить шансы на излечение недостаточности и остановки, уменьшить перезарядку на 10 секунд, улучшить восстановление выносливости и уменшение негативных эффектов, но добавить шанс выйти из строя при ударе током.&lt;br /&gt;
&lt;br /&gt;
Точные эффекты при ударе дефибриллятором:&lt;br /&gt;
*Обычное сердце:&lt;br /&gt;
5% - вызов сердечной недостаточности.&lt;br /&gt;
&lt;br /&gt;
10% - вызов спазмов, наносящих 10 урона от &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt; или &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;ожогов&amp;lt;/font&amp;gt;.&lt;br /&gt;
*Взломанное сердце:&lt;br /&gt;
20% - вызов болезненных спазмов, наносящих 20 урона от &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt; или &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;ожогов&amp;lt;/font&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
10% - вызов сердечной недостаточности или остановки сердца.&lt;br /&gt;
&lt;br /&gt;
5% - некроз сердца.&lt;br /&gt;
&lt;br /&gt;
Обратите внимание, что получение шока от электризованной двери уменьшает шансы вдвое, а получение оглушающей дубинкой или тазером - втрое.&lt;br /&gt;
&lt;br /&gt;
ЭМИ на улучшенное сердце в любом состоянии вызывает некроз органа.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетические легкие|Cybernetic Lungs}} Кибернетические легкие&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cybernetic Lungs.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic Lungs|Cybernetic Lungs]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Электронное устройство, имитирующее функции пары человеческих легких. Также работает в отношении воксов и плазмаменов дышащих токсичным для них газом, если изменить настройки мультитулом. Наносит 20 урона &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;гипоксией&amp;lt;/font&amp;gt; и ненадолго валит с ног от воздействия ЭМИ.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Улучшенные кибернетические легкие|Upgraded Cybernetic Lungs}} Улучшенные кибернетические легкие&lt;br /&gt;
&lt;br /&gt;
[[Файл:Upgraded Cybernetic Lungs.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Upgraded Cybernetic Lungs|Upgraded Cybernetic Lungs]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Более продвинутая версия [[#Кибернетические легкие|кибернетических легких]]. Они повышают порог невосприимчивости к &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;токсинам&amp;lt;/font&amp;gt; и углекислому газу в окружающей атмосфере. Понижает порог получения урона от холода до 200K, позволяя практически всем расам кроме [[врин]]ов и [[драск]]ов чувствовать себя лучше на холоде. Наносит 20 урона &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;гипоксией&amp;lt;/font&amp;gt; и ненадолго валит с ног от воздействия ЭМИ.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетическая печень|Cybernetic Liver}} Кибернетическая печень&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cybernetic Liver.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic Liver|Cybernetic Liver]]&lt;br /&gt;
| Пах&lt;br /&gt;
| Электронное устройство, имитирующее функции печени. Имеет базовый модификатор [[Руководство_по_еде_и_напиткам#Напитки_и_опьянение|опъянения]] в 1.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Кибернетические почки|Cybernetic Kidneys}} Кибернетические почки&lt;br /&gt;
&lt;br /&gt;
[[Файл:Cybernetic Kidneys.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Cybernetic Kidneys|Cybernetic Kidneys]]&lt;br /&gt;
| Пах&lt;br /&gt;
| Электронное устройство, имитирующее функции пары почек.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант питающей помпы|Nutriment Pump Implant}} Имплант питающей помпы&lt;br /&gt;
&lt;br /&gt;
[[Файл:Nutriment pump implant.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Nutriment Pump Implant|Nutriment Pump Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Когда носитель сильно голодает, этот имплант будет синтезировать и закачивать в его кровоток небольшое количество питательных веществ. При получении ЭМИ заражает пищевым отравлением и оглушает вводом 5-10 юнитов [[Руководство_по_фармакологии#????|????]] в кровь.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант питающей помпы ПЛЮС|Nutriment Pump Implant PLUS}} Имплант питающей помпы ПЛЮС&lt;br /&gt;
&lt;br /&gt;
[[Файл:Nutriment pump implant PLUS.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Nutriment Pump Implant PLUS|Nutriment Pump Implant PLUS]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Эта улучшенная версия [[#Имплант питающей помпы|питающей помпы]], закачивающая в кровоток на отметке, когда уже хочется кушать, а не при сильном голоде. При получении ЭМИ ввод [[Руководство_по_фармакологии#????|????]] в кровоток увеличен вдвое.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Оживляющий имплант|Reviver Implant}} Оживляющий имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Reviver.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Reviver Implant|Reviver Implant]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| В критическом состоянии лечит каждый тип урона на &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;3&amp;lt;/font&amp;gt;/&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;/&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;/&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt; урона с отдельным таймером 3-8 секунд на каждое лечение урона. Единоразово запускает сердце вновь, если остановилось.&lt;br /&gt;
При ЭМИ импульсе вызывает остановку сердца и уводит имплант на восстановление в 20 секунд.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Хирургический имплант|Surgical Arm Implant}} Хирургический имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Arm implant small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Surgical Arm Implant|Surgical Arm Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Набор хирургических инструментов, спрятанный за панелью на руке носителя. Нажмите Z в пустой руке, куда установлен имплант, дабы вызвать панель вызова инструментов. Нажмите Q, чтобы убрать инструмент обратно в руку. &lt;br /&gt;
&lt;br /&gt;
Инструменты в импланте работают в 2 раза быстрее обычных инструментов. Хирургическая пила из этого набора наносит 10 урона от &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt; вместо 15 у &amp;quot;оригинала&amp;quot;. Как и обычную пилу, можно заточить.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Инструментальный имплант|Toolset Arm Implant}} Инструментальный имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Arm implant small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Toolset Arm Implant|Toolset Arm Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Урезанная версия набора инструментов инженерного [[киборг]]а, предназначенная для установки в руку пациента. Содержит базовые инструменты, работающие в 2 раза быстрее обычных. &lt;br /&gt;
&lt;br /&gt;
Можно [[E-maggable objects|емагнуть]], открыв для доступа боевой нож, наносящий 20 урона от &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt; и поддающийся заточке.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Клинки богомола ШеллГуард|ShellGuard Mantis Blade}} Клинки богомола ШеллГуард&lt;br /&gt;
&lt;br /&gt;
[[Файл:Mantis.png|64px]]&lt;br /&gt;
&lt;br /&gt;
[[#ShellGuard Mantis Blade|ShellGuard Mantis Blade]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Скрытый клинок компании ShellGuard. Наносит 15 урона, имеет 20% пробития и 20% блока. При наличии имплантов в обоих руках, на Harm бьёт сразу обоими руками.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант лазерной пушки|Laser Arm Implant}} Имплант лазерной пушки&lt;br /&gt;
&lt;br /&gt;
[[Файл:Лазер имплант.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Laser Arm Implant|Laser Arm Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Вставляет вам в руку красиво выглядящий лазерный пистолет, по характеристикам полностью копирующий антикварную пушку капитана: 23 заряда и очень быстрая самозарядка!&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Уборочный имплант|Janitorial Toolset Implant}} Уборочный имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Arm implant small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Janitorial Toolset Implant|Janitorial Toolset Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Набор инструментов для уборки, спрятанный за панелью на руке носителя. Содержит заменитель ламп, супершвабру, обычное мыло, голопроектор уборщика и спрей с 250 космического очистителя.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Ботанический имплант|Botanical Toolset Implant}} Ботанический имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:Arm implant small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Botanical Toolset Implant|Botanical Toolset Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Набор ботанических инструментов, спрятанных за панелью на руке носителя. Содержит топорик, лопатку, культиватор, анализатор растений, ключ и кусачки.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Имплант для взлома|Hacking Arm Implant}} Имплант для взлома&lt;br /&gt;
&lt;br /&gt;
[[Файл:Arm implant small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Hacking Arm Implant|Hacking Arm Implant]]&lt;br /&gt;
| Рука&lt;br /&gt;
| Небольшой имплант в руку, содержащий усовершенствованную отвертку, кусачки и мультитул пришельцев, разработанный для [[инженер]]ов и полевой работы с механизмами. На самом деле полностью легален, несмотря на то, что название может заставить вас подумать об обратном.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Комический имплант|Comical implant}} Комический имплант&lt;br /&gt;
&lt;br /&gt;
[[Файл:CNS rebooter small.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Comical implant|Comical implant]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Этот имплант сделает вас настоящим [[Клоун|клоуном]]! Ваши сообщения в чате начинают писаться в шрифте Comic Sans. [[КПБ]]-клоуны появляются с встроенным имплантом.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Боевое обновление КПБ|IPC combat upgrade}} Боевое обновление КПБ&lt;br /&gt;
&lt;br /&gt;
[[Файл:IPC combat upgrade.png]]&lt;br /&gt;
&lt;br /&gt;
[[#IPC combat upgrade|IPC combat upgrade]]&lt;br /&gt;
| Загружается напрямую в мозг&lt;br /&gt;
| Боевое искусство для [[КПБ]].&lt;br /&gt;
&lt;br /&gt;
Позволяет легче обезвреживать угрозы и позволяет проводить дефибрилляцию при реанимации. Подробнее о приемах [[Боевые_искусства#Эксклюзивное_боевое_искусство_для_КПБ|тут]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Органические импланты==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;items-table implants colors-Abductor&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Предмет&lt;br /&gt;
! style=&amp;quot;width:15%;&amp;quot; | Место установки&lt;br /&gt;
! Описание&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Термальные рецепторы|Thermal Receptors}} Термальные рецепторы&lt;br /&gt;
&lt;br /&gt;
[[Файл:Thermal Receptors.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Thermal Receptors|Thermal Receptors]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Может быть извлечен только из [[генокрад]]а, обладающего способностью [[Генокрад#Augmented_Eyesight|аугментированное зрение]] и включившего эту способность. При удалении и имплантации в другого человека дает ему постоянное термальное зрение, пока орган не будет удален.&lt;br /&gt;
&lt;br /&gt;
Может быть обнаружен при полном сканировании тела. Имейте в виду, если [[генокрад]] отключает эту способность, тепловые рецепторы превращаются в защитные мембраны, которые вместо термального зрения дают защиту от вспышек. Кроме того, [[генокрад]] без способности [[Генокрад#Augmented_Eyesight|аугментированное зрение]] не обладают этими органами.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Горящие красные глаза|Burning Red Eyes}} Горящие красные глаза&lt;br /&gt;
&lt;br /&gt;
[[Файл:Burning Red Eyes.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Burning Red Eyes|Burning Red Eyes]]&lt;br /&gt;
| Глаза&lt;br /&gt;
| Могут быть получены от [[тенеморф]]а. Дают носителю ночное зрение.&lt;br /&gt;
|-&lt;br /&gt;
| {{Якорь|Божественные голосовые связки|Divine Vocal Chords}} Божественные голосовые связки&lt;br /&gt;
&lt;br /&gt;
[[Файл:Voice Of God.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Divine Vocal Chords|Divine Vocal Chords]]&lt;br /&gt;
| Рот&lt;br /&gt;
| Эти голосовые связки, полученные от мёртвого [[Руководство по шахтёрскому ремеслу#Colossus|Колосса]] , позволяют носителю использовать [[Глас Бога]].&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno plasma vessel|Xeno plasma vessel}} Сосуд с плазмой&lt;br /&gt;
&lt;br /&gt;
[[Файл:Плпзмо-почки.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno plasma vessel|Xeno plasma vessel]]&lt;br /&gt;
| Грудь&lt;br /&gt;
| Орган, полученный из тела [[ксеноморф]]а, позволяет вырабатывать плазму и создавать сорняки ксеноморфов. &#039;&#039;&#039;ВСЕ&#039;&#039;&#039; сорняки лечить носителя.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno hive node|Xeno hive node}} Связь с ульем&lt;br /&gt;
&lt;br /&gt;
[[Файл:Хайва.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno hive node|Xeno hive node]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Орган, полученный из тела [[ксеноморф]]а, обучает телепатическому общению ксеноморфов, а также носитель начинает принадлежать &amp;quot;фракции&amp;quot; ксеноморфов.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno neurotoxin gland|Xeno neurotoxin gland}} Нейротоксиновые железы&lt;br /&gt;
&lt;br /&gt;
[[Файл:Нейротоксин.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno neurotoxin gland|Xeno neurotoxin gland]]&lt;br /&gt;
| Голова &lt;br /&gt;
| Орган, полученный из тела [[ксеноморф]]а, позволяет носителю стрелять кислотными снарядами изо рта. При попадании наносят 30 урона ожогами.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno acid gland|Xeno acid gland}} Кислотные железы&lt;br /&gt;
&lt;br /&gt;
[[Файл:Кислотные железы.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno acid gland|Xeno acid gland]]&lt;br /&gt;
| Голова&lt;br /&gt;
| Орган, полученный из тела [[ксеноморф]]а, позволяет носителю плюнуть на объект или существо кислотой, которая начнет медленно разъедать поражённую поверхность.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno resin organ|Xeno resin organ}} Смоляные выделения&lt;br /&gt;
&lt;br /&gt;
[[Файл:ксено-строительство.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno resin organ|Xeno resin organ]]&lt;br /&gt;
| Рот&lt;br /&gt;
| Орган, полученный из тела [[ксеноморф]]а, &amp;quot;обучает&amp;quot; носителя &amp;quot;строительству&amp;quot; ксеноморфов. Носитель может создавать специальные стены, двери, мембраны и кровати ксеноморфов. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| {{Якорь|Xeno egg sac|Xeno egg sac}} Откладка яиц&lt;br /&gt;
&lt;br /&gt;
[[Файл:блять фу нахуй.png]]&lt;br /&gt;
&lt;br /&gt;
[[#Xeno egg sac|Xeno egg sac]]&lt;br /&gt;
| Ass&lt;br /&gt;
| Орган, полученный из тела королевы [[Ксеноморф|ксеноморфов]], вшивается &amp;lt;s&amp;gt;в жо...&amp;lt;/s&amp;gt; в толстую кишку или ее подобие, позволяет &amp;quot;создавать&amp;quot; яйца, ну и мерзость.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==СРП имплантов==&lt;br /&gt;
&lt;br /&gt;
{{СРП:Импланты}}&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33244</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33244"/>
		<updated>2023-10-29T09:27:53Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: /* Руководство по началу работы с TGUI */  - Добавил перенос строки&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code для удобного редактирования и отладки кода.]]&lt;br /&gt;
* [[#Установка и настройка Github|Настройка GitHub для начала работы с билдом.]]&lt;br /&gt;
&lt;br /&gt;
=== Взаимодействие с Git === &lt;br /&gt;
* [[#Настройка и использование Github Desktop|Установка и использование Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|(Альтернативно) Установка и использование TortoiseGit (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;bugfix: Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
tweak: усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
Старайтесь вкратце, желательно на английском, делать заголовок Pull Request&#039;а.&lt;br /&gt;
Название заголовка есть &amp;quot;тег: краткое описание&amp;quot;, например: &#039;&#039;&#039;bugfix: now table climbs do not cause server crash&#039;&#039;&#039;.&lt;br /&gt;
В данный момент журнал изменений отображается внтури игры. Там Вы, и любой другой игрок, можете ознакомиться с обновлениями.&lt;br /&gt;
&lt;br /&gt;
Какие теги ставить перед Вашим PR:&lt;br /&gt;
* bugfix: если Вы исправили некий баг&lt;br /&gt;
* add: если Вы добавили новую фичу&lt;br /&gt;
* imageadd: если просто поменяли спрайты, без затрагивания кода&lt;br /&gt;
* soundadd: если просто добавили новые звуки, без затрагивания кода&lt;br /&gt;
* tweak: если Вы сделали незначительную правку (например изменили одно число на другое)&lt;br /&gt;
* balance: то же что и tweak, но когда изменений множество&lt;br /&gt;
* refactor: если Вы полностью переписали старый код, улучшив его, НО не изменив функционал&lt;br /&gt;
* qol: если Ваше изменение не влияет на баланс, а только улучшает взаимодействие между игрой и игроком&lt;br /&gt;
* wip: если Ваш PR в драфте и планируется длительная разработка (можно не ставить)&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Как сделать хорошую демонстрацию изменений===&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Нажмите ПКМ по рабочей папке. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Задайте &#039;&#039;&#039;Local&#039;&#039;&#039; и &#039;&#039;&#039;Remote&#039;&#039;&#039; имя ветки, в которую вы совершили коммиты ранее (например My_First_Branch)&lt;br /&gt;
* Под Destination, задайте Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Это отправит изменения на удаленный репозиторий (На гитхабе).&lt;br /&gt;
* Зайдите в свой репозиторий (пример https://github.com/NAME/Paradise)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Pull Request&#039;&#039;&#039; справа сверху.&lt;br /&gt;
* Создайте Pull Request, следуя инструкциям из пресозданного шаблона.&lt;br /&gt;
* Получилось! Во многих случаях будут обнаружены ошибки, которые будут выделены другими участниками сообщества, merge-conflict&#039;ы и другие вещи, что заставит Вас посещать Pull Request вновь.&lt;br /&gt;
* Опционально, загляните в раздел Clean Commits для руководства по чистым коммитам, &#039;&#039;&#039;которые помогают мейнтейнерам легче проводить ревью!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33243</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33243"/>
		<updated>2023-10-29T08:25:03Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Добавлены текущие положения относительно Pull Request&amp;#039;ов на момент 29.10.2023&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code для удобного редактирования и отладки кода.]]&lt;br /&gt;
* [[#Установка и настройка Github|Настройка GitHub для начала работы с билдом.]]&lt;br /&gt;
&lt;br /&gt;
=== Взаимодействие с Git === &lt;br /&gt;
* [[#Настройка и использование Github Desktop|Установка и использование Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|(Альтернативно) Установка и использование TortoiseGit (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;bugfix: Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
tweak: усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
Старайтесь вкратце, желательно на английском, делать заголовок Pull Request&#039;а.&lt;br /&gt;
Название заголовка есть &amp;quot;тег: краткое описание&amp;quot;, например: &#039;&#039;&#039;bugfix: now table climbs do not cause server crash&#039;&#039;&#039;.&lt;br /&gt;
В данный момент журнал изменений отображается внтури игры. Там Вы, и любой другой игрок, можете ознакомиться с обновлениями.&lt;br /&gt;
&lt;br /&gt;
Какие теги ставить перед Вашим PR:&lt;br /&gt;
* bugfix: если Вы исправили некий баг&lt;br /&gt;
* add: если Вы добавили новую фичу&lt;br /&gt;
* imageadd: если просто поменяли спрайты, без затрагивания кода&lt;br /&gt;
* soundadd: если просто добавили новые звуки, без затрагивания кода&lt;br /&gt;
* tweak: если Вы сделали незначительную правку (например изменили одно число на другое)&lt;br /&gt;
* balance: то же что и tweak, но когда изменений множество&lt;br /&gt;
* refactor: если Вы полностью переписали старый код, улучшив его, НО не изменив функционал&lt;br /&gt;
* qol: если Ваше изменение не влияет на баланс, а только улучшает взаимодействие между игрой и игроком&lt;br /&gt;
* wip: если Ваш PR в драфте и планируется длительная разработка (можно не ставить)&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Как сделать хорошую демонстрацию изменений===&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Нажмите ПКМ по рабочей папке. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Задайте &#039;&#039;&#039;Local&#039;&#039;&#039; и &#039;&#039;&#039;Remote&#039;&#039;&#039; имя ветки, в которую вы совершили коммиты ранее (например My_First_Branch)&lt;br /&gt;
* Под Destination, задайте Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Это отправит изменения на удаленный репозиторий (На гитхабе).&lt;br /&gt;
* Зайдите в свой репозиторий (пример https://github.com/NAME/Paradise)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Pull Request&#039;&#039;&#039; справа сверху.&lt;br /&gt;
* Создайте Pull Request, следуя инструкциям из пресозданного шаблона.&lt;br /&gt;
* Получилось! Во многих случаях будут обнаружены ошибки, которые будут выделены другими участниками сообщества, merge-conflict&#039;ы и другие вещи, что заставит Вас посещать Pull Request вновь.&lt;br /&gt;
* Опционально, загляните в раздел Clean Commits для руководства по чистым коммитам, &#039;&#039;&#039;которые помогают мейнтейнерам легче проводить ревью!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33242</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33242"/>
		<updated>2023-10-29T07:57:39Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: /* Создание Pull Request */  Перевод для TortoiseGit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code для удобного редактирования и отладки кода.]]&lt;br /&gt;
* [[#Установка и настройка Github|Настройка GitHub для начала работы с билдом.]]&lt;br /&gt;
&lt;br /&gt;
=== Взаимодействие с Git === &lt;br /&gt;
* [[#Настройка и использование Github Desktop|Установка и использование Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|(Альтернативно) Установка и использование TortoiseGit (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Нажмите ПКМ по рабочей папке. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Задайте &#039;&#039;&#039;Local&#039;&#039;&#039; и &#039;&#039;&#039;Remote&#039;&#039;&#039; имя ветки, в которую вы совершили коммиты ранее (например My_First_Branch)&lt;br /&gt;
* Под Destination, задайте Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Это отправит изменения на удаленный репозиторий (На гитхабе).&lt;br /&gt;
* Зайдите в свой репозиторий (пример https://github.com/NAME/Paradise)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Pull Request&#039;&#039;&#039; справа сверху.&lt;br /&gt;
* Создайте Pull Request, следуя инструкциям из пресозданного шаблона.&lt;br /&gt;
* Получилось! Во многих случаях будут обнаружены ошибки, которые будут выделены другими участниками сообщества, merge-conflict&#039;ы и другие вещи, что заставит Вас посещать Pull Request вновь.&lt;br /&gt;
* Опционально, загляните в раздел Clean Commits для руководства по чистым коммитам, &#039;&#039;&#039;которые помогают мейнтейнерам легче проводить ревью!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33235</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33235"/>
		<updated>2023-10-28T22:33:38Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Изменены пункты списка для соответствия содержимому&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code для удобного редактирования и отладки кода.]]&lt;br /&gt;
* [[#Установка и настройка Github|Настройка GitHub для начала работы с билдом.]]&lt;br /&gt;
&lt;br /&gt;
=== Взаимодействие с Git === &lt;br /&gt;
* [[#Настройка и использование Github Desktop|Установка и использование Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|(Альтернативно) Установка и использование TortoiseGit (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33234</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33234"/>
		<updated>2023-10-28T22:25:57Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Добавлено уточнение для способов запуска локалок.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков) (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon? (Не рекомендуется для отладки, но есть возможность запуска сервера на несколько игроков)]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code? (Рекомендуется для отладки, не поддерживает мультиплеер)]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33233</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33233"/>
		<updated>2023-10-28T22:23:56Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Расширение, реструктуризация разделов быстрой навигации&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Установка и использование TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков) (Поддерживает работу с Git через контекстное меню Windows)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Запуск локальной версии билда ===&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через Visual Studio Code?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Маппинг (Редактирование карт) ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
&lt;br /&gt;
=== Спрайтинг ===&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== TGUI (Красивые интерфейсы внутри игры) ===&lt;br /&gt;
* [[#Руководство по началу работы с TGUI|Как начать работу с TGUI]]&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33232</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33232"/>
		<updated>2023-10-28T22:14:14Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Устранение опечаток&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* https://nodejs.org/en/download/, раздел с дистрибутивами для &#039;&#039;&#039;v12.x&#039;&#039;&#039; находится по ссылке https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33231</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33231"/>
		<updated>2023-10-28T22:12:42Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: /* Руководство по началу работы с TGUI */ - Добавление информации&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
Для начала работы с TGUI в билде Paradise (Актуально на момент 27.10.2023)&lt;br /&gt;
&lt;br /&gt;
* Внимательно читайте инструкцию, расположенную файле README.md внутри папки tgui билда для уточнения спорных моментов.&lt;br /&gt;
* Инструкции ниже проверены на версии &#039;&#039;&#039;Windows 10 x64 2004&#039;&#039;&#039;&lt;br /&gt;
* Установите &#039;&#039;&#039;NodeJS v12.13+&#039;&#039;&#039; (на данный момент v12.22.12)&lt;br /&gt;
* [Сайт NodeJS](https://nodejs.org/en/download/), раздел с дистрибутивом для &#039;&#039;&#039;v12.x&#039;&#039;&#039;  https://nodejs.org/dist/latest-v12.x/ (выбираете подходящее)&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x64.msi для Windows x64&lt;br /&gt;
* Пример https://nodejs.org/dist/latest-v12.x/node-v12.22.12-x86.msi для Windows x86&lt;br /&gt;
* Установите &#039;&#039;&#039;Yarn v1.19+&#039;&#039;&#039; https://yarnpkg.com/en/docs/install&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/tag/v1.19.2 ссылка на версию &#039;&#039;&#039;1.19.2&#039;&#039;&#039;&lt;br /&gt;
* https://github.com/yarnpkg/yarn/releases/download/v1.19.2/yarn-1.19.2.msi ссылка на скачивание версии &#039;&#039;&#039;1.19.2&#039;&#039;&#039; для &#039;&#039;&#039;ОС Windows&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Внутри VSCode (или командной строки, запущенной в корневой папке билда) пропишите &#039;&#039;&#039;cd tgui&#039;&#039;&#039;, затем &#039;&#039;&#039;yarn watch&#039;&#039;&#039; для отслеживания изменений внутри JS файлов интерфейсов TGUI и мгновенного отображения их в игре.&lt;br /&gt;
Для компиляции TGUI запустите &#039;&#039;&#039;tgui-build.bat&#039;&#039;&#039; в папке &#039;&#039;&#039;tgui/bin&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33230</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33230"/>
		<updated>2023-10-28T22:10:09Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: /* Учимся использовать TGUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
== Руководство по началу работы с TGUI ==&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33229</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33229"/>
		<updated>2023-10-28T10:13:16Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Перевод гайда по созданию коммитов с TortoiseGit, добавлено уточнение о том, что такое TortoiseGit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
TortoiseGit - вариант взаимодействия с Git со встроенными в контекстное меню проводника Windows возможностями.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* Коммит - это подтвержденное изменение файлов в Вашем репозитории, т.е фиксация изменений файлов. Старайтесь не делать коммит без подтверждения работоспособности (однако ошибки могут быть исправлены последующими коммитами.)&lt;br /&gt;
* Как было сказано ранее, Вы должны использовать разные ветки для разделения коммитов/изменений. &#039;&#039;&#039;Не совершайте коммит в master (master220). Эта ветка должна быть чистой, чтобы Вы могли к ней откатиться, если это требуется.&#039;&#039;&#039;&lt;br /&gt;
* Для создания коммитов, Вы должны отредактировать файлы, используя инструменты BYOND (для спрайтов, кода), VScode (для кода), StrongDMM (для маппинга). Убедитесь, что ваш код не идёт вразрез со стандартами. Когда вы закончили, нажмите ПКМ по рабочей папке и выберите &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Имя Вашей Ветки]&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
* Затем Вы сможете выбрать файлы, которые будут в коммите отмечая, или снимая отметку с них. Также стоит писать детальное описание коммита, объясняющее, что конкретно изменено в коммите.&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Commit&#039;&#039;&#039; и коммит будет занесён в Вашу ветку в локальном репозитории.&lt;br /&gt;
* Заметка: Если там написано &amp;quot;Commit &amp;amp; Push&amp;quot;, есть стрелка рядом с кнопкой, с помощью которой можно выбрать пункт &#039;&#039;&#039;Commit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33228</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33228"/>
		<updated>2023-10-28T05:13:01Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Частичный перевод и дополнение инструкций по установке и работе с TortoiseGit.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Установка и использование TortoiseGit==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском (частично переведено). Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если Вы ещё не установили Git Bash, сделайте это для корректной настройки TortoiseGit.&lt;br /&gt;
Руководство рабочее на момент 28.10.2023&lt;br /&gt;
&lt;br /&gt;
* Зайдите на сайт: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Скачайте версию TortoiseGit, подходящую под Вашу операционную систему.&lt;br /&gt;
* Запустите установочный файл&lt;br /&gt;
* В пункте &amp;quot;Choose SSH Client&amp;quot; выберите &amp;quot;Open SSH, Git default SSH Client.&amp;quot;&lt;br /&gt;
* После завершения установки программа предложит запустить мастер настройки, соглашаемся, отметив &amp;quot;Run first start wizard&amp;quot;, затем Finish.&lt;br /&gt;
* (Опционально) Можно скачать локализацию для TortoiseGit, однако рекомендуется использовать английскую версию данной программы.&lt;br /&gt;
* В пункте &amp;quot;Configure git.exe&amp;quot;, если Вы уже установили ранее Git Bash, нажмите &amp;quot;Check Now&amp;quot;, слева должно появиться &amp;quot;git version ...&amp;quot; (например git version 2.42.0.windows.2), нажимаем Далее.&lt;br /&gt;
* &#039;&#039;&#039;Перезапустите компьютер для полноценной работы TortoiseGit.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание форка билда===&lt;br /&gt;
Смотрите [[#Forking ParaCode|сюда]]&lt;br /&gt;
&lt;br /&gt;
===Скачивание кода билда===&lt;br /&gt;
* Найдите место, где будет расположен код билда.&lt;br /&gt;
* Щелкните ПКМ по выбранной папке и нажмите &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* Поле URL должно быть отмечено ссылкой на ваш форк (например https://github.com/{username}/Paradise.git)&lt;br /&gt;
* Нажмите Next и наблюдайте, как летающие черепахи переносят билд на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Настройка TortoiseGit===&lt;br /&gt;
* Нажмите ПКМ &#039;&#039;&#039;на созданную папку&#039;&#039;&#039; (обычно называется Paradise), перейдите к &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; и нажмите &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Нажмите на &#039;&#039;&#039;Remote&#039;&#039;&#039; под &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* Там должен быть список удаленных репозиториев, например: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Теперь нужно добавить главный репозиторий:&lt;br /&gt;
* В окне &#039;&#039;&#039;Remote&#039;&#039;&#039; пропишите &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* В окне &#039;&#039;&#039;URL:&#039;&#039;&#039; пропишите: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Вам может быть предложено добавить ветки с новодобавленного удаленного репозитория (&amp;quot;Do you want to fetch remote branches from the newly added remote?&amp;quot;), соглашаемся.&lt;br /&gt;
* В окне устанавливаем &amp;quot;Remote&amp;quot; на upstream, жмём OK.&lt;br /&gt;
* Теперь у вас есть актуальная версия билда.&lt;br /&gt;
* Почти всё!&lt;br /&gt;
&lt;br /&gt;
===Обновляем Ваш Репозиторий===&lt;br /&gt;
* Перед работой с чем-либо убедитесь, что Ваш билд находится в одной точке развития с основным.&lt;br /&gt;
* Нажмите ПКМ по папке репозитория, потом &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* В выпадающем списке &#039;&#039;&#039;Remote&#039;&#039;&#039; выберите &#039;&#039;&#039;upstream&#039;&#039;&#039; (или как Вы его обозначили)&lt;br /&gt;
* &#039;&#039;&#039;remote branch&#039;&#039;&#039; назначена на &#039;&#039;&#039;master&#039;&#039;&#039;. (или master220 в нашем случае)&lt;br /&gt;
* Нажмите &#039;&#039;&#039;Ok&#039;&#039;&#039;. Изменения из удаленного репозитория попадут на Ваш компьютер.&lt;br /&gt;
&lt;br /&gt;
===Создание ветки (Branching)===&lt;br /&gt;
&lt;br /&gt;
Ветвление репозитория крайне важно для организации Ваших коммитов, и для каждого отдельного изменения должна быть создана отдельная ветка (Например, если Вы хотите изменить спрайт предмета, и за одно пофиксить баг - эти изменения должны быть в отдельных ветках).&lt;br /&gt;
Работа с ветками позволяет делать отдельные Pull Request&#039;ы на каждое изменение. Это делает процесс разработки прямым и позволяет избежать головной боли при разработке.&lt;br /&gt;
&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Выберите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout&#039;&#039;&#039;&lt;br /&gt;
* В Branch выберите ветку, от которой желаете сделать ответвление.&lt;br /&gt;
* Для работы с чистой версией билда Paradise выберите &amp;quot;remotes/upstream/master220&amp;quot;&lt;br /&gt;
* Отметьте галочкой &amp;quot;Create New Branch&amp;quot;.&lt;br /&gt;
* Назовите ветку удобным названием. &lt;br /&gt;
* Нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;, новая ветка будет создана, а билд автоматически переключится на неё.&lt;br /&gt;
&lt;br /&gt;
====Перемещение между ветками (Switch Branches)====&lt;br /&gt;
* Нажмите ПКМ по папке с билдом. Нажмите &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, затем &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Выберите нужную ветку, нажмите &#039;&#039;&#039;OK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Создание коммита===&lt;br /&gt;
* A commit is confirmed change of the files in your repo, it&#039;s how you make changes permanently to the files in your repo, so try not to commit without making sure it works (though subsequent commits can fix it).&lt;br /&gt;
* As said before, you should use different branches to separate your commits/changes.  Don&#039;t commit to master.  It should be clean, so you can fall back on it if needed.&lt;br /&gt;
* To make your commits, you need to edit the files using BYOND&#039;s inbuilt editing tools. Make sure to follow coding standards when making your changes! When you&#039;re finished, right click the folder you&#039;re working with and choose &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Your Branch Name]&amp;quot;&#039;&#039;&#039; (Example: Git Commit -&amp;gt; &amp;quot;My_First_Branch&amp;quot;)&lt;br /&gt;
* You can then select only the files you want to be committed by ticking or unticking them. You should also write a detailed commit summary, detailing what happened in that commit.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039; and the commit will be committed to your local repo!&lt;br /&gt;
&lt;br /&gt;
===Создание Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33227</id>
		<title>Руководство по разработке</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5&amp;diff=33227"/>
		<updated>2023-10-28T03:47:54Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Исправление опечатки&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Это руководство предназначено для обучения новичков успешной работе с кодом билда &#039;&#039;&#039;Paradise.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Пожалуйста, прочитайте руководство полностью от верха до низа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чтобы максимально удобно и эффективно вносить изменения в код вам будут нужны эти три вещи:&#039;&#039;&#039;&lt;br /&gt;
# Текстовый редактор (VSCode крайне рекомендован)&lt;br /&gt;
# Github&lt;br /&gt;
# Сам BYOND редактор — Dream Maker&lt;br /&gt;
&lt;br /&gt;
{{toc_right}}&lt;br /&gt;
&lt;br /&gt;
== Быстрая навигация ==&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.4em;&amp;quot;&amp;gt;[[#Я абсолютный новичок|Я абсолютный новичок]]&amp;lt;/span&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[#Малые изменения|Я хочу внести малые изменения или/и я спрайтер]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Рабочее пространство ===&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Мне нужно установить\настроить VS Code]]&lt;br /&gt;
* [[#Установка и настройка Github|Мне нужно настроить Git/Github]]&lt;br /&gt;
* [[#Настройка и использование Github Desktop|Я хочу использовать Github Desktop (Дружелюбно к новичкам)]]&lt;br /&gt;
* [[#Setting up &amp;amp; Using TortoiseGit|Я хочу использовать TortoiseGit (Не для новичков)]]&lt;br /&gt;
* [[#Forking ParaCode|Я загрузил всё вышеперечисленное, как мне получить и настроить репозиторий?]]&lt;br /&gt;
&lt;br /&gt;
=== Внесение изменений ===&lt;br /&gt;
* [[#Делаем изменения|Ок, у меня есть конфигурация репозитория, как мне менять содержимое?(Pull Requests)]]&lt;br /&gt;
* [[#Учимся кодить|Ок, я завершил настройку своих изменений! Как мне закодировать/внести вклад на сервер?]]&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Как мне создать Pull Request и отправить свои изменения через Desktop GitHub?]]&lt;br /&gt;
* [[#Как делать предложения правок на GutHub|Я заметил ошибку, как о ней сообщить?]]&lt;br /&gt;
&lt;br /&gt;
=== Работа с редакторами ===&lt;br /&gt;
* [[Руководство по маппингу|У меня образование архитектора космических станций и я хочу внести изменения в карту]]&lt;br /&gt;
* [[Руководство по спрайтингу|Я свободный художник-академик и хочу поработать со спрайтами]]&lt;br /&gt;
&lt;br /&gt;
=== Дополнительно ===&lt;br /&gt;
* [[#Учимся использовать TGUI|Как использовать TGUI для создания красивых интерфейсов?]]&lt;br /&gt;
* [[Как делать перевод игры]]?&lt;br /&gt;
* [[Запуск локального сервера|Как запустить локалку через Dream Daemon?]]&lt;br /&gt;
* [[Запуск локального сервера#Запуск по кодерски|Как запустить локалку через VSC?]]&lt;br /&gt;
&lt;br /&gt;
=== Для продвинутых ===&lt;br /&gt;
* [[Настройка базы данных|Настройка БД на локалке]]&lt;br /&gt;
* [[Структура кода SS13]]&lt;br /&gt;
* [[Форматирование текста]]&lt;br /&gt;
* [[SS13 для опытных программистов]]&lt;br /&gt;
----&lt;br /&gt;
Вы также можете помочь с переводом гайдов и их дополнением для будущих потомков: [[Руководство по редактированию вики]]&lt;br /&gt;
&lt;br /&gt;
==Я абсолютный новичок==&lt;br /&gt;
Итак, вы в ситуации, с которой сталкивался каждый разработчик Paradise. Как мне научиться работать и привносить свой вклад? Как мне добавить свой код к коду сервера? Что ж, тут несколько шагов, как начать работу и загрузить ресурсы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Просто прочитайте этот гайд пока не дойдёте до конца. Пока вы следуете этим шагам всё должно быть в порядке!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[File:ContributingFlowchartRU.png|800px]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Малые изменения==&lt;br /&gt;
Возникают ситуации, когда вы являетесь спрайтером или человеком, которому нужно поменять всего пару значений, а кодера по таким пустякам дергать не хочется. Да и зачем накидывать на кодеров такую работу, если можно сделать самому, правильно? &amp;lt;br&amp;gt;&lt;br /&gt;
В этом плане вам повезло, так как это руководство и создано для новичков и тех, кто никогда не работал с кодом или трогал только конфиги в разных играх. Выше находится [[#Я абсолютный новичок|гайд для новичков]], в нём по пунктам объяснено как вам нужно вклиниваться в разработку для занесения изменений. &amp;lt;br&amp;gt;&lt;br /&gt;
После того как вы освоите базу для внесения изменений, вы сможете тратить буквально минуты на свои собственные идеи и быть действительно полезным. А у &amp;quot;более крутых кодеров&amp;quot; будет больше времени на крупные фичи, фиксы и рефакторы. &amp;lt;br&amp;gt;&lt;br /&gt;
Самостоятельность - это хорошо.&lt;br /&gt;
&lt;br /&gt;
Если вкратце по пунктам описать что вам потребуется:&lt;br /&gt;
* [[#Устанавливаем и настраиваем Visual Studio Code|Visual Studio Code]] - для внесения изменений&lt;br /&gt;
* [[#Настройка и использование Github Desktop|GitHub Desktop]] - для загрузки изменений    &lt;br /&gt;
* [[#Forking ParaCode|Репозиторий]] - ваш личный билд куда вы вносите изменения&lt;br /&gt;
* [[#Делаем Pull Request (ПР)|Pull Request]] - для добавления изменений в основной билд&lt;br /&gt;
* Дождаться правок после внесения изменений в основной билд, если они будут&lt;br /&gt;
* Ждать, пока изменение не зальют на основной билд.&lt;br /&gt;
* ... &lt;br /&gt;
* Profit!&lt;br /&gt;
&lt;br /&gt;
При внесении малых изменений, наподобие уменьшения урона у оружия, добавления другой иконки, изменения описания/названия, обязательно убедитесь, что всё корректно работает и именно так как вы и хотели, и вы ничего лишнего не затронули. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Как может затронуться что-то лишнее?&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете допустить опечатку, случайно поставить пробел не в том месте. В любом случае, Github Desktop покажет вам все ваши изменения и вы сможете увидеть, где могли допустить ошибку. &amp;lt;br&amp;gt;&lt;br /&gt;
Но также, у предмета есть &amp;quot;наследование&amp;quot;, и все его внутренние переменные передаются его детям, что может внести изменения также и другим вещам. Возьмем например два предмета (родитель и дочь) с путями &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt;. Нам нужно изменить им описание &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;. У первого предмета в коде написан &amp;lt;code&amp;gt;desc&amp;lt;/code&amp;gt;, когда у второго он не написан. Это означает что описание предмета &amp;lt;code&amp;gt;food/cake/chocolate&amp;lt;/code&amp;gt; будет взято(наследоваться) у &amp;lt;code&amp;gt;food/cake&amp;lt;/code&amp;gt;, и все изменения этого предмета будут также влиять на дочерние. Чтобы этого избежать, вам всего-лишь нужно добавить дочерним предметам недостающую переменную со значениями, если вы не хотите чтобы они тоже менялись.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Пример: Добавление одежды для должности интерна&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы дошли до внесения изменений, но еще не внесли сами изменения, так как не понимаете как? Вы хотите добавить одежду или изменить её, но запутались что именно вам нужно делать? Тогда данный пункт гайда для вас. В нём мы разберем как сделать одно из простейших изменений, а также продемонстрируется интересная фича.&lt;br /&gt;
&lt;br /&gt;
Возьмём в пример одежду доктора и сделаем из неё новую одежду для интерна, на английском мы знаем что название профессии Medical Doctor. Воспользуемся поиском VSC, чтобы найти его одежду. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes1.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Находим одежду &amp;lt;code&amp;gt;medical doctor&#039;s jumpsuit&amp;lt;/code&amp;gt; в файле &amp;lt;code&amp;gt;medsci.dm&amp;lt;/code&amp;gt;. Перейдем к самому файлу и посмотрим что в нём находится. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes2.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку:&lt;br /&gt;
* /obj/item/clothing/under/rank/medical - путь нашего объекта, который наследует всё что в нём написано, наследует методы и параметры одежды &amp;lt;code&amp;gt;/clothing/&amp;lt;/code&amp;gt;, типа предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt; и типа объекта &amp;lt;code&amp;gt;/obj/&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - название нашей одежды&lt;br /&gt;
* &#039;&#039;&#039;desc&#039;&#039;&#039; - описание нашей одежды метода предмета &amp;lt;code&amp;gt;/item/&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки лежащей на земле или в инвентаре, которая берется из файла &amp;lt;code&amp;gt;&#039;icons/obj/clothing/uniforms.dmi&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название нашего слоя одежды на мобе, который берется из файла &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. 4 спрайта в одном файле для каждого из 4-х направлений (Север, Восток, Запад, Юг)&lt;br /&gt;
* &#039;&#039;&#039;permeability_coefficient&#039;&#039;&#039; - коэффициент проницаемых болезней в тело куклы. 1 - обычная величина. А 0.5 - уменьшенная проницаемость (лучше стойкость)&lt;br /&gt;
* &#039;&#039;&#039;armor&#039;&#039;&#039; - коэффициенты защиты одежды. В нашем случае он слегка устойчив к биозаражению (10). 100 - максимальная величина.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь сделаем одежду, наследующую все переменные с нашей докторской одежды, чтобы у неё тоже были те же данные с коэффициентами проницаемости и бронёй, но при этом другая иконка и название. &amp;lt;br&amp;gt;&lt;br /&gt;
Создадим в коде одежду интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes3.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Разберем по порядку&lt;br /&gt;
* /obj/item/clothing/under/rank/medical&#039;&#039;&#039;/intern&#039;&#039;&#039; - создаем новый тип объекта, путем добавления &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; к пути изначального объекта. Благодаря этому он наследует всё что было определено в объектах по этим путям.&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; - новое название нашей одежды. Теперь это одежда интерна.&lt;br /&gt;
* &#039;&#039;&#039;icon_state&#039;&#039;&#039; - название иконки одежды нашего интерна добавленного в файл.&lt;br /&gt;
* &#039;&#039;&#039;item_color&#039;&#039;&#039; - название слоя нашей одежды на кукле, который мы добавили в файл&lt;br /&gt;
&lt;br /&gt;
Теперь разберем как добавлять файлы одежды.&lt;br /&gt;
Для начала откроем необходимый нами файл, находящиеся по заданным путям, в данном случае мы возьмём за пример слой одежды на кукле, находящийся по пути &amp;lt;code&amp;gt;&#039;icons/mob/uniform.dmi&#039;&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes4.png]] &lt;br /&gt;
&lt;br /&gt;
После открытия файла, необходимо теперь найти одежду доктора по известному нам названию слоя &amp;lt;code&amp;gt;&amp;quot;medical&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes5.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Экспортируем (скачаем) слой одежды. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes6.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Изменяем наш слой одежды через редакторы, конвертируя файл в .png или в самом Dream Maker. Но спрайтеры рекомендуют использовать Asperite&lt;br /&gt;
&lt;br /&gt;
Если вы начинающий спрайтер, то не забудьте ознакомиться с [[Руководство по спрайтингу|руководством для спрайтеров]]. Он поможет вам соориентироваться в поиске файлов. &amp;lt;br&amp;gt;&lt;br /&gt;
Если у вас остаются вопросы, вы хотите продвинутой разработки и гайд вам в этом уже не помогает, вы всегда можете обратиться за помощью к другим начинающим разработчикам, спрайтерам и кодерам. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Новая одежда интерна и её иконка: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes7.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
После того, как новая одежда была создана, нам необходимо её импортировать (загрузить): &amp;lt;br&amp;gt;&lt;br /&gt;
Это не обязательно, если одежда уже была нарисована в файле с помощью Копирования Dream Maker. &amp;lt;br&amp;gt;&lt;br /&gt;
Для иконки мы проделываем тоже самое в его пути. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes8.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Результат импортирования: &amp;lt;br&amp;gt;&lt;br /&gt;
Не забудьте сохранить файл. Горячие клавиши сохранения: &#039;&#039;&#039;Ctrl + S&#039;&#039;&#039;. Если на файле присутствует знак звездочки *, это означает что файл не сохранен. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes9.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь необходимо проверить, нормально ли отрисовывается одежда на кукле при надевании. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Запуск локального сервера#Запуск по кодерски|Чтобы проверить, необходимо запустить локалку.]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локалка правильно настроена и у вас появились &amp;quot;щитспавн кнопки&amp;quot;, откройте Game Panel, где вы сможете заспавнить нужный вам объект, в нашем случае мы в спавн объектов вписываем путь нашего предмета: &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
На самом деле достаточно вписать только &amp;lt;code&amp;gt;/intern&amp;lt;/code&amp;gt; и он сразу выдаст вам все похожие варианты объектов на это слово. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes10.png]] &lt;br /&gt;
&lt;br /&gt;
Теперь оденем нашу куклу и проверим всё ли стабильно отрисовывается и нет ли никаких артефактов (например полупрозрачные символы, которые вы случайно могли оставить). &amp;lt;br&amp;gt;&lt;br /&gt;
Сравним его также с обычной одеждой доктора. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes11.png]] &lt;br /&gt;
&lt;br /&gt;
Добавление одежды успешно. Слой стабильно отрисовывается и нас всё устраивает. &amp;lt;br&amp;gt;&lt;br /&gt;
Теперь можно переходить к пункту загрузки изменений и добавить новую одежду интерна в билд. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Интересная фича&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Вы можете сделать одежду для альтернативных названий должностей, для этого вам предстоит зайти в файлы профессий находящиеся по пути &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
В этой папке находятся файлы, которые определяют, во что будет одета та или иная должность и её должностные свойства. &amp;lt;br&amp;gt;&lt;br /&gt;
Возьмём всё также в пример файл медицинских должностей: &amp;lt;code&amp;gt;&amp;quot;code/game/jobs/job/medical.dm&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Находим интересующую нас должность или добавляем новую. В случае должности интерна это будет выглядеть так: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes12.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У должности интерна определяется во что он будет одет: &amp;lt;code&amp;gt;outfit = /datum/outfit/job/doctor/intern&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Определяются альтернативные названия: &amp;lt;code&amp;gt;alt_titles = list(&amp;quot;Student Medical Doctor&amp;quot;, &amp;quot;Medical Assistant&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для каждого слота доступного игроку, определяется во что будет одета кукла при заходе на должность. &amp;lt;br&amp;gt;&lt;br /&gt;
Так как должность интерна наследуется от должности доктора, то он одевается сначала в него, а потом в то, что определяется по новому пути. &amp;lt;br&amp;gt;&lt;br /&gt;
Так, униформа от доктора у него будет отличаться и он будет одет в новую одежду для интерна: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;uniform = /obj/item/clothing/under/rank/medical/intern&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для альтернативных названий, с помощью копирования данного кода с заданием пути, возможно определить, во что будет одета альтернативная должность: &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:MakeClothes13.png]] &lt;br /&gt;
&lt;br /&gt;
В данном коде указывается, что &amp;quot;Medical Assistant&amp;quot; будет одет в униформу &amp;lt;code&amp;gt;/obj/item/clothing/under/rank/medical/intern/assistant&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
А &amp;quot;Student Medical Doctor&amp;quot; будет одет в специальную светло-зеленый комплект одежды с головой &amp;lt;code&amp;gt;head&amp;lt;/code&amp;gt; и униформой &amp;lt;code&amp;gt;uniform&amp;lt;/code&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Устанавливаем и настраиваем Visual Studio Code==&lt;br /&gt;
=== Установка VScode===&lt;br /&gt;
&lt;br /&gt;
* Идём на вебсайт VSCode&#039;s: https://code.visualstudio.com/&lt;br /&gt;
* Загружаем и устанавливаем актуальную версию.&lt;br /&gt;
&lt;br /&gt;
=== Установка VSCode плагинов===&lt;br /&gt;
Когда вы откроете Paradise репозиторий, у вас появится уведомление об установке некоторых рекомендованных дополнений, они просто устанавливаются по данному алгоритму&lt;br /&gt;
&lt;br /&gt;
* Перейдите на вебсайт VScode и загрузите плагины&lt;br /&gt;
* Нажатие &amp;quot;Установка&amp;quot; перенаправит вас в VSCode где вы можете установить и перезагрузить его&lt;br /&gt;
&lt;br /&gt;
Вот пара плагинов, которые крайне полезны для кодинга в DM&lt;br /&gt;
* Подсветка синтаксиса: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support&lt;br /&gt;
* Поиск символов: https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Установка и настройка Github==&lt;br /&gt;
Эта часть про установку и настройку Git и созданию Github аккаунта.&lt;br /&gt;
===Установка Git Bash===&lt;br /&gt;
* Переходим: http://git-scm.com/downloads&lt;br /&gt;
* Загружаем Windows Git программу, подходящую вашей операционной системе (оно должно будет выглядеть как &amp;quot;Git-2.18.0-64-bit.exe&amp;quot;)&lt;br /&gt;
* Устанавливаем его и оставляем всё в стандартном режиме (просто пропускаем всё кнопкой next).&lt;br /&gt;
* Дожидаемся конца установки.&lt;br /&gt;
* Готово!&lt;br /&gt;
===Регистрируемся в Git===&lt;br /&gt;
(Пропустите, если у вас уже есть аккаунт) &lt;br /&gt;
Вам нужен будет аккаунт, чтобы привносить изменения в репозиторий (Место, где хранится код) должным образом.&lt;br /&gt;
* Переходим: https://github.com/&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Sign up&#039;&#039;&#039; в правом верхнем углу.&lt;br /&gt;
* Вводим свою почту&lt;br /&gt;
* Придумываем пароль&lt;br /&gt;
* Создаём себе крутой ник&lt;br /&gt;
* Соглашаемся или отказываемся от рассылки.&lt;br /&gt;
* Решаем капчу и создаём аккаунт!&lt;br /&gt;
* Готово!&lt;br /&gt;
&lt;br /&gt;
===Скрываем свою почту (Опционально, рекомендуется)===&lt;br /&gt;
Некоторые из вас не захотят показывать в своём резюме, что они работали над какими-то сомнительными проектами. Или более приближённо, сообщество SS13 мрачно и полно ужасов, и вам захочется защитить свою почту (или использовать подставную почту в первую очередь).&lt;br /&gt;
&lt;br /&gt;
О, и вам наверняка захочется редактировать ERP сервера под альтернативным именем.&lt;br /&gt;
&lt;br /&gt;
По умолчанию включено, но лучше перестраховаться&lt;br /&gt;
* Заходим в аккаунт на Github&lt;br /&gt;
* В правом верхнем углу нажимаем на свой профиль&lt;br /&gt;
* Появится список, выбираем &amp;quot;настройки&amp;quot;&lt;br /&gt;
* Переходим к Emails&lt;br /&gt;
* Включаем настройку Keep my email addresses private. Теперь Github будет использовать безответны письма при операциях.&lt;br /&gt;
* Теперь вы защищены лучше!&lt;br /&gt;
&lt;br /&gt;
===Настраиваем Git (Опционально)===&lt;br /&gt;
* Переходим: https://help.github.com/articles/set-up-git/#setting-up-git&lt;br /&gt;
* Следуя гайду выше, вы можете установить Git для Windows если хотите, однако это не рекомендуется&lt;br /&gt;
* Теперь у вас есть полностью настроенный Git, но если вы неграмотны в написании кода, как я, то вам захочется иметь какую-нибудь причудливую графику!&lt;br /&gt;
&lt;br /&gt;
===Дополнительные видео===&lt;br /&gt;
Вспомогательные видео (на английском) для лучшего понимания Github.&lt;br /&gt;
&lt;br /&gt;
*[https://www.youtube.com/watch?v=ZDR433b0HJY Введение в Git с Scott Chacon от GitHub]&lt;br /&gt;
*[https://www.youtube.com/watch?v=MYP56QJpDr4 Git from bits up]&lt;br /&gt;
*[https://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds (Тот парень, которой изобрёл Linux и Git)]&lt;br /&gt;
&lt;br /&gt;
==Форк кода Парадайза==&lt;br /&gt;
&lt;br /&gt;
;Репозиторий&lt;br /&gt;
:Версия кода, может быть один или несколько оригинальных, на которых собирается проверенный на других репозиториях код.&lt;br /&gt;
&lt;br /&gt;
;Форкинг&lt;br /&gt;
:Создание своего ответвления от оригинального кода, создание репозитория&lt;br /&gt;
&lt;br /&gt;
Теперь посетите [https://github.com/ss220-space/Paradise Paradise Github репозиторий]  Вам нужно будет нажать кнопку &amp;lt;code&amp;gt;Fork&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:ForkingParacode.png]] &lt;br /&gt;
&lt;br /&gt;
Ого, у вас теперь есть свой репозиторий! Фактически репозиторий — полная копия оригинального кода, отличие лишь в том, что они не связаны и любые ваши изменения не влияют на оригинал. Теперь, давайте скомбинируем ваш репозиторий и VS Code! Вернитесь в VS Code и перезапустите его. Под меню контроля ресурсов (выглядит как ветка дерева) нажмите &amp;lt;code&amp;gt;Clone Repository&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Это должно будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeSidebar.png]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этой кнопки там нет, то вы можете нажать комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;P&amp;lt;/kbd&amp;gt; что бы открыть список команд, затем введите туда &amp;lt;code&amp;gt;Git: Clone&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь, вставьте URL репозитория, который вы создали пару шагов назад. Для этого зайдите в свой репозиторий через меню профиля, а после возьмите ссылку страницы. Оно должно быть похоже на такую ссылку: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://github.com/ваше&amp;lt;/nowiki&amp;gt; имя/имя репозитория&amp;lt;/code&amp;gt; Далее выберите папку, в которой будет хранится локальный репозиторий. Процесс загрузки может занять много времени, налейте себе чаю. После загрузки откройте эту папку в VS Code. Теперь у вас есть локальная копия кода!&lt;br /&gt;
&lt;br /&gt;
===Расширения VS Code===&lt;br /&gt;
Нажмите на кнопку &amp;lt;code&amp;gt;Extensions&amp;lt;/code&amp;gt; (расширения) на левой панели (выглядит как кучка квадратов), или нажмите комбинацию &amp;lt;kbd&amp;gt;Ctrl&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;Shift&amp;lt;/kbd&amp;gt; + &amp;lt;kbd&amp;gt;X&amp;lt;/kbd&amp;gt;. Вы должны будете увидеть количество рекомендованных расширений. Если нет, пропишите &amp;lt;code&amp;gt;@recommended&amp;lt;/code&amp;gt; в поисковую строку. По крайней мере вы захотите установить необходимые расширений из списка ниже. Рекомендованные расширения не обязательны, но значительно облегчат вам работу.&lt;br /&gt;
&lt;br /&gt;
====Необходимые расширения====&lt;br /&gt;
&lt;br /&gt;
; BYOND DM Language Support&lt;br /&gt;
:Подсветка синтаксиса для языка DM&lt;br /&gt;
; DreamMaker Language Client&lt;br /&gt;
:Необычные функции, такие как отладка и переход к определениям&lt;br /&gt;
; EditorConfig for VS Code&lt;br /&gt;
:Загружает стандартную конфигурацию редактора для кодовой базы&lt;br /&gt;
; ESlint&lt;br /&gt;
:Предоставляет список для Javascript (этот необходим только если вы планируете работать с TGUI)&lt;br /&gt;
&lt;br /&gt;
====Рекомендованные расширения====&lt;br /&gt;
; GitLens&lt;br /&gt;
:Предоставляет классные фичи, такие как возможность выбрать строчку и увидеть время последней редакции и кто её редактировал&lt;br /&gt;
; Error Lens&lt;br /&gt;
:Подсветка строк кода, в которых есть ошибки и показывание ошибок в той же строчке&lt;br /&gt;
; GitHub Pull Requests&lt;br /&gt;
:Позволяет сделать запрос помощи прямо из редактора&lt;br /&gt;
; Git Graph&lt;br /&gt;
:Позволяет более визуально удобно работать с ветвями&lt;br /&gt;
; Bracket Pair Colorizer 2&lt;br /&gt;
:Подкрашивает скобки в разные цвета, позволяя не запутаться в их количестве&lt;br /&gt;
&lt;br /&gt;
===Добавляем Paracode как верхний репозиторий===&lt;br /&gt;
Нам надо добавить главный Paradise репозиторий в качестве удалённого репозитория.&lt;br /&gt;
&lt;br /&gt;
чтобы сделать это, откройте командную палитру, введите &amp;lt;code&amp;gt;Git: Add Remote&amp;lt;/code&amp;gt; и нажмите &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;. Далее, вам предложит ввести URL ссылку , а потом и имя удалённого репозитория. Вводим &amp;lt;code&amp;gt;https://github.com/ss220-space/Paradise&amp;lt;/code&amp;gt; в качестве URL, и &amp;lt;code&amp;gt;upstream&amp;lt;/code&amp;gt; в качестве имени. После завершения вы будете иметь главный Paradise репозиторий в качестве верхнего удалённого: Это позволит вам легко отправлять запросы о помощи позже.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Делаем изменения==&lt;br /&gt;
Во-первых, давайте поговорим о &#039;&#039;&#039;ветвях&#039;&#039;&#039;. Первое, что надо выполнить - это сделать новую ветвь в вашем ответвлении. Это важно, потому что вам никогда не следует делать изменения в вашу обычную ветвь (оригинальную) вашего ответвления. Ей стоит оставить в чистом состоянии.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Для каждого PR, который вы создаёте делайте новую ветку.&#039;&#039;&#039; Таким образом, каждый ваш индивидуальный проект будет иметь свою собственную ветвь. Изменения одной ветки не будут влиять на другие ветки, так что вы сможете работать над несколькими проектами одновременно.&lt;br /&gt;
===Создание ветвей===&lt;br /&gt;
Чтобы создать новую ветвь, откройте source control на боковой панели. Перейдите к More Actions menu (выглядит как &amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;) и нажмите &amp;lt;code&amp;gt;Checkout to...&amp;lt;/code&amp;gt; , типа такого:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeBranching.png]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Теперь нажмите &amp;quot;Create new branch&amp;quot;. В этом гайде я буду создавать новую шляпу, поэтому именем моей ветки будет &amp;lt;code&amp;gt;hat-landia&amp;lt;/code&amp;gt;. Если вы посмотрите в левый нижний угол, вы увидите, что VS Code автоматически проверил нашу ветку:[[File:VSCodeBranchExample.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Запомните, &#039;&#039;&#039;никогда не изменяйте главную ветвь!&#039;&#039;&#039; Вы можете работать с любой веткой сколько вам угодно, пока фиксируете изменения в отдельной (новосозданной) ветке.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вперёд! Меняйте код как хотите! Это гайд по тому, как вносить изменения, не по тому, что вам вносить! Так что я не расскажу вам как именно вам кодить, создавать спрайты или менять карту. Если вам нужна будет помощь, попробуйте спросить в канале &amp;lt;code&amp;gt;#help-chat&amp;lt;/code&amp;gt; или дождитесь кого-то из кодеров в онлайне в дискорде.&lt;br /&gt;
&lt;br /&gt;
===Изменения кода===&lt;br /&gt;
Вы можете найти код для редактирования во владке &amp;quot;Explorer&amp;quot; (два листа бумаги) в боковой панели; если вам надо найти файл или строку кода, и вы знаете его имя или расположение, то вы можете использовать поиск, он находится в боковой панели под Explorer.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Стиль старой школы: если вы хотите использовать DreamMaker вместо этого, можете редактировать их там - как только вы их сохраните, VS Code обновит ваши изменения и вы сможете продолжать следовать гайду здесь.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь сохраняем свои изменения. Если вновь взглянем на контроль ресурсов (Source Control), мы увидим, что у нас появилось несколько изменений. Git нашёл каждое изменение, которое вы сделали со своим форком на вашем компьютере! Даже если вы изменили единственный пробел в одной строчке кода, Git найдёт это изменение. Просто убедитесь, что вы сохранили свои файлы.&lt;br /&gt;
=== Тестируем свой код ===&lt;br /&gt;
Самый простой способ протестить свои изменения, это нажать &#039;&#039;&#039;F5&#039;&#039;&#039; или воспользоваться меню &#039;&#039;&#039;run and debug&#039;&#039;&#039; под контролем ресурсов&#039;&#039;&#039;.&#039;&#039;&#039; Это скомпилирует ваш код, запустит сервер и присоединит вас к нему, а так же выдаст вам права администратора. Это также запустит дебаггер, который поможет вам изучить, что могло пойти не так, когда ошибка закроет вам игру. Если вы хотите не запускать дебаггер, то нажмите &#039;&#039;&#039;Ctrl + F5&#039;&#039;&#039; для запуска. Запуск сервера может занять длительное время, не надо постоянно останавливать и перезапускать запуск.&lt;br /&gt;
&lt;br /&gt;
Если F5 автоматически не запускает локальный сервер, возможно, вы установили BYOND по пользовательскому пути, и VSC не нашел его. В этом случае попробуйте следующее:&lt;br /&gt;
# Нажмите «&#039;&#039;&#039;Ctrl&#039;&#039;&#039; + &#039;&#039;&#039;,&#039;&#039;&#039;», чтобы открыть настройки VSC.&lt;br /&gt;
# Введите «DreamMaker», выберите «DreamMaker language client configuration».&lt;br /&gt;
# В ячейку «DreamMaker: Byond Path» добавьте свой путь к BYOND (например, &amp;lt;code&amp;gt;D:\Program Files (x86)\BYOND&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Нажмите OK и закройте вкладку.&lt;br /&gt;
# Нажмите клавишу F5, чтобы запустить сервер.&lt;br /&gt;
&lt;br /&gt;
Если это не работает, вы можете скомпилировать код в dmb, запустить Dream Daemon, выбрать файл dmb, установить Security(безопасность) на Trusted(Доверенное) и нажать GO, чтобы запустить сервер. После запуска сервера вы можете нажать на новую кнопку над кнопкой GO/STOP (которые теперь красные), чтобы подключиться.&lt;br /&gt;
&lt;br /&gt;
Просто запуск локального сервера не сделает вас админом в игре автоматически, для этого вам надо скопировать всё из &amp;lt;code&amp;gt;/config/example&amp;lt;/code&amp;gt; и вставить это в &amp;lt;code&amp;gt;/config&amp;lt;/code&amp;gt;. Затем надо будет отредактировать &amp;lt;code&amp;gt;/config/admins.txt&amp;lt;/code&amp;gt; , добавив строчку &amp;lt;code&amp;gt;ваше имя в byond - Hosting Provider&amp;lt;/code&amp;gt; в список, по аналогии с примером, который уже будет в файле.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Файл:DreamDaemon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обязательно проверяйте не только свои изменения, но и косвенные. Убедитесь, что они больше ничего не затронули с чем это могло быть взаимосвязано.&lt;br /&gt;
Например поменяв модификатор скорости усваивания у родительского реагента, вы также затрагиваете скорость усваивания дочерних.&lt;br /&gt;
&lt;br /&gt;
===Изменения в вашу ветку===&lt;br /&gt;
Наведите указатель мыши на слово &#039;&#039;&#039;Changes&#039;&#039;&#039; и нажмите знак плюса, чтобы подготовить все измененные файлы. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStageChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Или выберите каждый файл, который вы хотите изменить по отдельности. Staged Changes — это изменения, которые вы собираетесь отправить в коммит, а затем в Pull Request. Как только вы это сделаете, они появятся на новой вкладке «Staged Changes»&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeStagedChanges.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Нажмите на один из файлов кода, которые вы изменили! Вы увидите всплывающее окно сравнения исходного файла с новым файлом. Здесь вы можете видеть, строка за строкой, каждое сделанное вами изменение. Красные линии — это строки, которые вы удалили или изменили, а зеленые — это строки, которые вы добавили или обновили. Вы даже можете включить или отключить отдельные строки с помощью меню More Actions &amp;lt;code&amp;gt;(...)&amp;lt;/code&amp;gt; в правом верхнем углу.&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы подготовили свои изменения, вы готовы сделать коммит. В верхней части панели вы увидите раздел Message «Сообщение». Введите имя, описывающее ваши изменения в коммите и описание, если необходимо. Будьте лаконичны! По вашему коммиту должно быть понятно какие изменения оно совершает.&lt;br /&gt;
&lt;br /&gt;
Убедитесь, что вы проверили новую ветку, созданную ранее, и нажмите на галочку! Это сделает ваш коммит и добавит его в вашу ветку. Это должно выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCommit.png]]&lt;br /&gt;
&lt;br /&gt;
Ну вот! Вы успешно внесли изменения(commit) в свою ветку(branch). Он все еще «неопубликован» и находится только на вашем локальном компьютере, на что указывает значок маленького облака и стрелки в левом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
===Публикация на GitHub===&lt;br /&gt;
Щелкните значок GitHub на левой боковой панели, выглядящий как кошка в кругу. Теперь вам нужно щелкнуть знак +, который появляется в левом верхнем углу, например:&lt;br /&gt;
&lt;br /&gt;
[[File:VSCodeCreatePR.png]]&lt;br /&gt;
&lt;br /&gt;
Затем выберите верхний репозиторий (upstream repo) и нацельтесь на главную ветку(master branch). Вы сможете выбрать название вашего PR. Расширение сделает ваш PR с выбранным вами заголовком и описанием по умолчанию. &#039;&#039;&#039;ПЕРЕД ОТПРАВКОЙ:&#039;&#039;&#039; убедитесь, что вы правильно создали PR и следовали шаблону описания.&lt;br /&gt;
&lt;br /&gt;
Примечание к журналам изменений (ChangeLogs). Журналы изменений должны быть ориентированы на игрока, то есть они должны быть понятными и применимыми к обычному пользователю, не знакомому с кодингом. Будьте как можно более проще,&lt;br /&gt;
&amp;lt;pre&amp;gt;Исправление(fix): Исправлена ​​ошибка с X, когда вы Y&lt;br /&gt;
Фича(tweak): усилен X, чтобы наносить Y больше урона. &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Избегайте написания гигантских журналов изменений и внутренних изменений кода, которые явно не влияют на игровой процесс игрока. Это все примеры того, что вы не должны добавлять:&lt;br /&gt;
&amp;lt;pre&amp;gt;tweak: добавлен флаг NO_DROP к элементу X.&lt;br /&gt;
tweak: рефакторинг ДНК, чтобы CPU лучше работал&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ShareX — очень полезный инструмент для внесения вклада, так как он позволяет создавать гифки для отображения ваших изменений. вы можете скачать его, [https://getsharex.com/ здесь]&lt;br /&gt;
&lt;br /&gt;
если все пойдет хорошо, ваш PR должен выглядеть так:&lt;br /&gt;
&lt;br /&gt;
[[Файл:ExamplePR.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Если вы хотите добавить больше изменений(коммитов) в свой PR, все, что вам нужно сделать, это просто отправить эти коммиты в ветку.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Учимся кодить==&lt;br /&gt;
Теперь, когда всё настроено, осталось сделать последний штрих. Изучить логику и код. Ну ладно, не совсем последний штрих. Не бойся, хоть это одна из сложных вещей, есть масса гайдов по Dream Maker, а также кодеры, которые вам помогут! Главное правило изучение - не просите делать всё за вас, а то вы так ничего не изучите. Всё дается не сразу и поэтому стоит набраться терпения и сил. Кодерами не рождаются, ими становятся, пересилив себя ради создания хороших вещей!&lt;br /&gt;
&lt;br /&gt;
[https://wiki.ss13.ru/index.php?title=All_about_the_code Переведенный гайд] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://secure.byond.com/docs/ref/info.html# DM Reference] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md TG STYLE] &amp;lt;br&amp;gt;&lt;br /&gt;
[https://github.com/tgstation/tgstation/blob/master/.github/guides/STANDARDS.md TG STANDARDS] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:99%&amp;quot; class=&amp;quot;toccolours&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.8em;&amp;quot;&amp;gt;&#039;&#039;&#039;СТОЯТЬ! Если ты только начинаешь и уверен что готов двигаться дальше, то можешь ознакомиться с инструкциями ниже по настройке твоих IDE и дополнительной информацией.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
==Настройка и использование Github Desktop==&lt;br /&gt;
* Заходим на: https://desktop.github.com/&lt;br /&gt;
* Скачиваем Github Desktop для своей системы.&lt;br /&gt;
* Дожидаемся окончания установки!&lt;br /&gt;
* Следуем шагам для регистрации/логина на GitHub..&lt;br /&gt;
&lt;br /&gt;
===Ответвление [Fork]===&lt;br /&gt;
Читаем [[#Forking ParaCode|данный гайд по ответвлению.]][[Файл:CloneRepo.png|мини|Выпадающее меню]]&lt;br /&gt;
&lt;br /&gt;
===Создание локального репозитория===&lt;br /&gt;
* Открываем Github Desktop&lt;br /&gt;
* Выбираем &amp;quot;File&amp;quot;, &amp;quot;Clone repository..&amp;quot;&lt;br /&gt;
* Выбираем ваш ответвленный Paradise репозиторий&lt;br /&gt;
* Выбираем локальный путь куда будет клонирован репозиторий&lt;br /&gt;
* Нажмите Clone и дождитесь окончания&lt;br /&gt;
*Теперь у вас есть локальный репозиторий на вашем устройстве&lt;br /&gt;
&lt;br /&gt;
===Обновление вашего репозитория===&lt;br /&gt;
* Перед тем как начать работу, вы должно обновить ваш master&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на &#039;&#039;Current Branch&#039;&#039; в верхней части экрана&lt;br /&gt;
*Выберите ваш &#039;&#039;master&#039;&#039;, для нашего билда это &#039;&#039;&#039;master220&#039;&#039;&#039;&lt;br /&gt;
* Кликните внизу на &#039;&#039;Choose a branch to merge into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Найдите &#039;&#039;upstream/master branch&#039;&#039; и выберите его.&lt;br /&gt;
* Нажмите на &#039;&#039;Merge &#039;&#039;&#039;upstream/master&#039;&#039;&#039; into &#039;&#039;&#039;master220&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
[[Файл:Branch.png|мини|Branch в GitHub Desktop]]&lt;br /&gt;
&lt;br /&gt;
===Ответвляем от репозитория [Branch]===&lt;br /&gt;
*&#039;&#039;&#039;Branch-ветвление вашего репозитория очень важно для организации ваших коммитов (изменений), у вас должна быть отдельная ветка для каждого несвязанного изменения кода (например, если вы хотите создать несколько новых спрайтов для одного элемента и изменить свойства другого, они должны быть в отдельных ветках). Запросы на слияние (Pull Request) работают с ветками (Branch), а не с коммитами, это позволит вам создавать отдельные запросы на слияние для каждого изменения. Это упростит весь процесс и избавит всех от головной боли...&#039;&#039;&#039;&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
*Нажмите на Current Branch в верхней части экрана&lt;br /&gt;
*В выпадающем меню нажмите на New Branch&lt;br /&gt;
* Задайте ему название зависимое от ваших изменений и нажмите Create branch&lt;br /&gt;
&lt;br /&gt;
===Переключение между branch-ветвями===&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Нажмите на выпадающее меню Current branch и выберите branch-ветку на который хотите переключиться.&lt;br /&gt;
* If you have open changes then it might fail. Either stash, commit or discard the open changes and try again. Если у вас есть изменения, это может привести к ошибке. Вы можете их зафиксировать, оставить в предыдущей ветке, отменить изменения и повторить попытку.&lt;br /&gt;
[[Файл:Commit Change.png|мини|Внесение изменения]]&lt;br /&gt;
&lt;br /&gt;
===Делаем Commit-изменение===&lt;br /&gt;
* Коммит — это подтвержденное изменение файлов в вашем репозитории, именно так вы постоянно вносите изменения в файлы в вашем репозитории, поэтому старайтесь не вносить коммит, не убедившись, что он работает (хотя последующие коммиты могут это исправить).&lt;br /&gt;
*Как и было ранее сказано, вы должны использовать разные версии веток-branch&#039;ей для внесения ваших commit-изменений. &#039;&#039;&#039;Не вносите изменение в ваш master.&#039;&#039;&#039; Он должен оставаться чистым, чтобы вы могли использовать его для создания последующих веток и откатов при нужде.&lt;br /&gt;
*Чтобы внести свои изменения-commit&#039;ы, вам нужно отредактировать файлы с помощью встроенных инструментов редактирования BYOND или любого другого инструмента редактирования, такого как Visual Studio Code ([[Руководство по разработке#Устанавливаем и настраиваем Visual Studio Code|Как его установить?]]), который рекомендуем для разработки. Обязательно соблюдайте стандарты кодирования при внесении изменений!&lt;br /&gt;
* Откройте Github Desktop и выберите ваш репозиторий&lt;br /&gt;
* Повторно проверьте внесенные вами изменения.&lt;br /&gt;
* Назовите внесенные изменения.&lt;br /&gt;
* Опционально, опишите внесенные вами изменения.&lt;br /&gt;
* Нажмите &#039;&#039;Commit to &amp;quot;BRANCH_NAME&amp;quot;&#039;&#039; &lt;br /&gt;
*Ваши изменения внеслись в вашу ветку, вы можете повторно увидеть их во вкладке History&lt;br /&gt;
&lt;br /&gt;
===Делаем Pull Request (ПР)===&lt;br /&gt;
* Открываем Github Desktop и выбираем ваш репозиторий&lt;br /&gt;
* Нажимаем на Public branch&lt;br /&gt;
* Переходим на ваш GitHub репозиторий, к примеру: https://github.com/NAME/Paradise&lt;br /&gt;
* Нажимаем &#039;&#039;&#039;Pull Request&#039;&#039;&#039; на самом верху&lt;br /&gt;
* Заполняем форму с изменениями, после чего создает Pull Request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request. &lt;br /&gt;
*Готово! Во многих случаях в ваших изменениях могут обнаружиться ошибки, на которые указали другие участники, либо же неудачные конфликты слияния или другие вещи, которые потребуют от вас пересмотра вашего запроса на включение. &lt;br /&gt;
*Не забудьте убедиться что у вас всё верно и постарайтесь получить одобрение от других участников разработки.&lt;br /&gt;
*Теперь вам необходимо ожидать внесения ваших изменений в родительский репозиторий.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible&amp;quot; style=&amp;quot;width:99%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Setting up &amp;amp; Using TortoiseGit==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:99%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:1.2em;&amp;quot;&amp;gt;&#039;&#039;&#039;Настройка на английском. Для новичков рекомендуем по прежнему использовать Github Desktop&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Go here: http://code.google.com/p/tortoisegit/wiki/Download&lt;br /&gt;
* Download the right TortoiseGit for your system.&lt;br /&gt;
* When installing, click &#039;&#039;&#039;OpenSSH&#039;&#039;&#039; rather than TortoisePLink&lt;br /&gt;
* Finish installing.&lt;br /&gt;
* &#039;&#039;&#039;RESTART YOUR COMPUTER THIS IS NOT A DRILL.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Forking Code===&lt;br /&gt;
See [[#Forking ParaCode|this]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Downloading the Code===&lt;br /&gt;
* Find a place you don&#039;t mind the code sitting.&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Git Clone...&#039;&#039;&#039;&lt;br /&gt;
* The URL field should be filled with the URL of your Fork. If not, paste it in.&lt;br /&gt;
* Click Next and watch flying tortoises bring you your code.&lt;br /&gt;
&lt;br /&gt;
===Setting up TortoiseGit===&lt;br /&gt;
* Right click &#039;&#039;&#039;on the folder that was created&#039;&#039;&#039; (usually called Paradise), and go to &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; and then click on &#039;&#039;&#039;Settings&#039;&#039;&#039;.&lt;br /&gt;
* Click on &#039;&#039;&#039;Remote&#039;&#039;&#039; under &#039;&#039;&#039;Git&#039;&#039;&#039;.&lt;br /&gt;
* There should be one thing on the list of remotes, with the name: &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* You&#039;re now adding the main repository as a source you can pull updates from.&lt;br /&gt;
* In the &#039;&#039;&#039;Remote&#039;&#039;&#039; box type in &#039;&#039;&#039;upstream&#039;&#039;&#039;.&lt;br /&gt;
* In the &#039;&#039;&#039;URL:&#039;&#039;&#039; box put: https://github.com/ss220-space/Paradise.git&lt;br /&gt;
* Click &#039;&#039;&#039;Add New/Save&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;.&lt;br /&gt;
* Almost done!&lt;br /&gt;
&lt;br /&gt;
===Updating your Repository===&lt;br /&gt;
* Updating your repo with the master should be done before trying anything.&lt;br /&gt;
* Right-click the folder your repo is in and select &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039; then &#039;&#039;&#039;Pull&#039;&#039;&#039;.&lt;br /&gt;
* Click the radial button next to &#039;&#039;&#039;Remote&#039;&#039;&#039; and make sure &#039;&#039;&#039;upstream&#039;&#039;&#039; (or whatever you called it) is selected next to it.&lt;br /&gt;
* The &#039;&#039;&#039;remote branch&#039;&#039;&#039; should be set to &#039;&#039;&#039;master&#039;&#039;&#039;.&lt;br /&gt;
* Then click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This will pull the latest changes from the master repo.&lt;br /&gt;
&lt;br /&gt;
===Making a Branch===&lt;br /&gt;
Branching your repo is very important for organising your commits, you should have a different branch for each unrelated code change (e.g. if you wanted to make some new sprites for one item and change the properties of another these should be in seperate branches), as Pull requests work off branches rather than commits this will allow you to make a seperate Pull Request per change. Doing this streamlines the whole process and will save everyone a bunch of headaches.&lt;br /&gt;
&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Create Branch...&#039;&#039;&#039;&lt;br /&gt;
* Type in your new branch name&lt;br /&gt;
* (Optional) Tick &#039;&#039;&#039;Switch to new branch&#039;&#039;&#039;&lt;br /&gt;
* Press &#039;&#039;&#039;Okay&#039;&#039;&#039; and your new branch is created&lt;br /&gt;
&lt;br /&gt;
====Switching between Branches====&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Switch/Checkout...&#039;&#039;&#039;&lt;br /&gt;
* Choose your Branch then press &#039;&#039;&#039;Okay&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Making a Commit===&lt;br /&gt;
* A commit is confirmed change of the files in your repo, it&#039;s how you make changes permanently to the files in your repo, so try not to commit without making sure it works (though subsequent commits can fix it).&lt;br /&gt;
* As said before, you should use different branches to separate your commits/changes.  Don&#039;t commit to master.  It should be clean, so you can fall back on it if needed.&lt;br /&gt;
* To make your commits, you need to edit the files using BYOND&#039;s inbuilt editing tools. Make sure to follow coding standards when making your changes! When you&#039;re finished, right click the folder you&#039;re working with and choose &#039;&#039;&#039;Git Commit -&amp;gt; &amp;quot;[Your Branch Name]&amp;quot;&#039;&#039;&#039; (Example: Git Commit -&amp;gt; &amp;quot;My_First_Branch&amp;quot;)&lt;br /&gt;
* You can then select only the files you want to be committed by ticking or unticking them. You should also write a detailed commit summary, detailing what happened in that commit.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039; and the commit will be committed to your local repo!&lt;br /&gt;
&lt;br /&gt;
===Making a Pull Request===&lt;br /&gt;
* Right-click in your working folder. Then choose &#039;&#039;&#039;TortoiseGit&#039;&#039;&#039;, and &#039;&#039;&#039;Push...&#039;&#039;&#039;&lt;br /&gt;
* Set &#039;&#039;&#039;Local&#039;&#039;&#039; and &#039;&#039;&#039;Remote&#039;&#039;&#039; to the name of the branch you committed before. (e.g. My_First_Branch)&lt;br /&gt;
* Under Destination, set Remote: to &#039;&#039;&#039;origin&#039;&#039;&#039;.&lt;br /&gt;
* Click &#039;&#039;&#039;Ok&#039;&#039;&#039;. This&#039;ll upload your changes to your remote repo (the one on GitHub).&lt;br /&gt;
* Head to your GitHub repo e.g https://github.com/NAME/Paradise&lt;br /&gt;
* Click &#039;&#039;&#039;Pull Request&#039;&#039;&#039; at the top right.&lt;br /&gt;
* Fill out a summary and then create the pull request.&lt;br /&gt;
* You&#039;re done! In many cases there will be issues pointed out by other contributors, unfortunate merge conflicts, and other things that will require you to revisit your pull request.&lt;br /&gt;
* Optionally, view Clean Commits for a guide on cleaner commit logs, &#039;&#039;&#039;cleaner commits help maintainers review!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Clean commits / Squashing commits(Optional)===&lt;br /&gt;
* Your commit logs are filthy, full of one or two line commits that fix an error that makes you look bad, and the commit is called &amp;quot;Whoops&amp;quot; or &amp;quot;oops&amp;quot;&lt;br /&gt;
* Navigate to your &#039;&#039;&#039;local version of the branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure it is up to date with the &#039;&#039;&#039;remote&#039;&#039;&#039;&lt;br /&gt;
* Go to &#039;&#039;&#039;Show log&#039;&#039;&#039;&lt;br /&gt;
* Select all the commits associated with this change or PR&lt;br /&gt;
* Right click and choose &#039;&#039;&#039;Combine to one commit&#039;&#039;&#039;&lt;br /&gt;
* This will open up the standard commit interface for TortoiseGit, with the commit logs of the selected commits merged together&lt;br /&gt;
* Perform the normal routine for a commit&lt;br /&gt;
* Go to &#039;&#039;&#039;push&#039;&#039;&#039; your branch to the &#039;&#039;&#039;remote branch&#039;&#039;&#039;&lt;br /&gt;
* Ensure &#039;&#039;&#039;Force Overwrite Existing Branch (may discard changes)&#039;&#039;&#039; is selected to make sure the PR/Remote updates to contain just this squashed commit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Как делать предложения правок на GitHub==&lt;br /&gt;
=== Окно изменений PR&#039;а ===&lt;br /&gt;
# Статус ПРа. &lt;br /&gt;
## Open - открыт. ПР готов принимать правки и быть замерженым в проект.&lt;br /&gt;
## Merged - занесен в билд. Нет смысла предлагать правки&lt;br /&gt;
## Closed - закрыт по какой-либо причине. В большинстве случаев нет смысла предлагать правки, если автор не собирается открывать&lt;br /&gt;
## Draft - ПР в разработке. Правки нужны только если автор не против или он сам попросил&lt;br /&gt;
# Список измененных файлов. Можно нажать чтобы быстро переместиться&lt;br /&gt;
# Наведите курсор на строку и нажмите на плюсик, если хотите внести правку&lt;br /&gt;
# Путь к файлу, можно быстро скопировать и использоваться в вашей IDE&lt;br /&gt;
# Завершение занесения правок&lt;br /&gt;
[[Файл:Review1_small.png]]&lt;br /&gt;
&lt;br /&gt;
=== Написание правки ===&lt;br /&gt;
Не обязательно что это будет именно правка. Возможно вы решили просто прокомментировать строку, так как знаете более лучший способ решения или у вас возник какой-то вопрос.&lt;br /&gt;
# Строка к которой применяется правка или комментарий&lt;br /&gt;
# Кнопка для внесения предложения по изменению строки&lt;br /&gt;
# Внесение правки в &amp;quot;общий пул&amp;quot;&lt;br /&gt;
# Завершение написания правок и окончание ревью&lt;br /&gt;
[[Файл:Review2.png]]&lt;br /&gt;
&lt;br /&gt;
=== Окончание ревью ===&lt;br /&gt;
# Кнопка завершения ревью со всем пулом правок.&lt;br /&gt;
# Вердикт. Написание комментария ко всему пулу внесенных вами правок.&lt;br /&gt;
# Прокомментировали код. Возможно что-то стало непонятно или нашли более лучшее решение.&lt;br /&gt;
# С кодом все в порядке и возражений нету.&lt;br /&gt;
# Вы запросили изменения, надо что-то исправить.&lt;br /&gt;
[[Файл:Review4.png]]&lt;br /&gt;
&lt;br /&gt;
=== Отображение правки ===&lt;br /&gt;
Если вы являетесь автором PR&#039;а и вам внесли правки:&lt;br /&gt;
# Принять заносимую правку для внесения в ваш PR/Branch&lt;br /&gt;
# Вводная строка для комментирования правки&lt;br /&gt;
# Отметить что вы решили эту проблему, загрузили правку и вмешательства более не требуются (до следующих правок).&lt;br /&gt;
[[Файл:Review3.png]]&lt;br /&gt;
&lt;br /&gt;
==Учимся использовать TGUI==&lt;br /&gt;
Если вы все еще новичок, рекомендуется больше узнать о DM, прежде чем переходить к TGUI. Все наши пользовательские интерфейсы (кроме элементов OOC, таких как панели администратора) сделаны с использованием TGUI или должны быть преобразованы в TGUI в какой-то момент в будущем. (Вот куда это ведет!)&lt;br /&gt;
&lt;br /&gt;
TGUI использует InfernoJS (на основе reactJS), который является расширением для javascript. Учиться может быть сложно, потому что это совершенно другой язык, но не бойтесь! Есть много руководств, которым вы можете следовать.&lt;br /&gt;
&lt;br /&gt;
===Guides===&lt;br /&gt;
TGUI прост, но его трудно понять тому, кто с ним не знаком. ПРОЧИТАЙТЕ ЭТИ РУКОВОДСТВА. И да. Они на английском.&lt;br /&gt;
&lt;br /&gt;
Обязательно прочитайте их по порядку&lt;br /&gt;
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript A re-introduction to JavaScript]&lt;br /&gt;
* [https://reactjs.org/docs/hello-world.html Guide to using ReactJS] &amp;lt;- На самом деле мы не используем react, но полезно для изучения&lt;br /&gt;
* [https://infernojs.org/docs/guides/components Brief rundown of InfernoJS]&lt;br /&gt;
* [https://github.com/ss220-space/Paradise/blob/master/tgui/docs/tutorial-and-examples.md TGUI Tutorials and Examples]&lt;br /&gt;
&lt;br /&gt;
{{Contribution Guides}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
	<entry>
		<id>https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%B5%D0%B4%D0%B5_%D0%B8_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B0%D0%BC/%D0%90%D0%BB%D0%BA%D0%BE%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B8_%D0%B8_%D0%BA%D0%BE%D0%BA%D1%82%D0%B5%D0%B9%D0%BB%D0%B8&amp;diff=31345</id>
		<title>Руководство по еде и напиткам/Алкогольные напитки и коктейли</title>
		<link rel="alternate" type="text/html" href="https://wiki.ss220.space/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%B5%D0%B4%D0%B5_%D0%B8_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B0%D0%BC/%D0%90%D0%BB%D0%BA%D0%BE%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%BD%D0%B0%D0%BF%D0%B8%D1%82%D0%BA%D0%B8_%D0%B8_%D0%BA%D0%BE%D0%BA%D1%82%D0%B5%D0%B9%D0%BB%D0%B8&amp;diff=31345"/>
		<updated>2023-06-01T13:43:12Z</updated>

		<summary type="html">&lt;p&gt;Vladisvell: Добавлены эффекты напиткам согласно недавнему ПРу. https://github.com/ss220-space/Paradise/pull/2880&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:85%; text-align:left; border: 3px solid #010032; cellspacing=0; cellpadding=2; background-color:white;&amp;quot;&lt;br /&gt;
|+Рецепты и эффекты алкогольных напитков.&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:150px; background-color:#BADDFF;&amp;quot; |Название&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; class=&amp;quot;unsortable&amp;quot; style=&amp;quot;width:150px; background-color:#BADDFF;&amp;quot; |Рецепт&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:150px; background-color:#BADDFF;&amp;quot; |Крепость&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; class=&amp;quot;unsortable&amp;quot; style=&amp;quot;background-color:#BADDFF;&amp;quot; |Эффекты&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Кислотный плевок&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:AcidSpit.gif]]&amp;lt;br&amp;gt;(Acid Spit)&lt;br /&gt;
|&lt;br /&gt;
*5 Wine &lt;br /&gt;
*1 Sulphuric Acid&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Заставляет кричать с 50% шансом при глотке.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Коктейль союзников&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:AlliesCocktail.png]]&amp;lt;br&amp;gt;(Allies Cocktail)&lt;br /&gt;
| &lt;br /&gt;
*1 Classic Martini&lt;br /&gt;
*1 Vodka&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Алоэ&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Aloe.png]]&amp;lt;br&amp;gt;(Aloe)&lt;br /&gt;
| &lt;br /&gt;
*1 Watermelon Juice &lt;br /&gt;
*1 Milk Cream&lt;br /&gt;
*1 Whiskey&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Амасек&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Amasec.png]]&amp;lt;br&amp;gt;(Amasec)&lt;br /&gt;
| &lt;br /&gt;
*1 Iron&lt;br /&gt;
*5 Wine &lt;br /&gt;
*5 Vodka&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Андалузия&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Andalusia.png]]&amp;lt;br&amp;gt;(Andalusia)&lt;br /&gt;
|&lt;br /&gt;
*1 Rum &lt;br /&gt;
*1 Whiskey &lt;br /&gt;
*1 Lemon Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Антифриз&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:antifreezeglass.png]]&amp;lt;br&amp;gt;(Anti-Freeze)&lt;br /&gt;
|&lt;br /&gt;
*2 Vodka &lt;br /&gt;
*1 Cream &lt;br /&gt;
*1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Поддерживает температуру тела при переохлаждении, нагревая тело с шагом в 20 кельвинов.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Эпплджек&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:cognac.png]]&amp;lt;br&amp;gt;(Applejack)&lt;br /&gt;
|&lt;br /&gt;
*охладить 2 части Cider до 270 K в химическом нагревателе&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Атомная бомба&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Atomicbombglass.gif]]&amp;lt;br&amp;gt;(Atomic Bomb)&lt;br /&gt;
|&lt;br /&gt;
*10 B-52 &lt;br /&gt;
*1 Uranium&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|B-52&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:B-52.png]]&lt;br /&gt;
|&lt;br /&gt;
*1 Irish Cream &lt;br /&gt;
*1 Kahlua &lt;br /&gt;
*1 Cognac&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Бахама Мама&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Bahamamamaglass.png]]&amp;lt;br&amp;gt;(Bahama Mama)&lt;br /&gt;
|&lt;br /&gt;
*2 Rum &lt;br /&gt;
*2 Orange Juice &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
*1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Несмотря на отсутствие бананов, [[Клоун|клоунов]] не лечит. &#039;&#039;&#039;HONK&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Благословение Бахуса&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Bacchus-blessing.gif]]&amp;lt;br&amp;gt;(Bacchus&#039; Blessing)&lt;br /&gt;
|&lt;br /&gt;
*1 Hooch &lt;br /&gt;
*1 Absinthe &lt;br /&gt;
*1 Manly Dorf &lt;br /&gt;
*1 Syndicate Bomb&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;3&#039;&#039;&#039;&lt;br /&gt;
|&#039;&#039;&#039;Вас предупредили.&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Босяк&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Barefoot.png]]&amp;lt;br&amp;gt;(Barefoot)&lt;br /&gt;
|&lt;br /&gt;
*1 Cream &lt;br /&gt;
*1 Vermouth &lt;br /&gt;
*1 Berry Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Удар Бипски&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BeepskySmash.gif]]&amp;lt;br&amp;gt;(Beepsky Smash)&lt;br /&gt;
|&lt;br /&gt;
*2 Lime Juice &lt;br /&gt;
*2 Whiskey&lt;br /&gt;
*1 Iron&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Постоянно вас оглушает, заставляя вас ронять все предметы из рук, пока коктейль в организме.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пилоко&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Bilk.png]]&amp;lt;br&amp;gt;(Bilk)&lt;br /&gt;
|&lt;br /&gt;
*1 Beer&lt;br /&gt;
*1 Milk&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Чёрный русский&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BlackRussian.png]]&amp;lt;br&amp;gt;(Black Russian)&lt;br /&gt;
|&lt;br /&gt;
*3 Vodka &lt;br /&gt;
*2 Kahlua&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Кровавая Мэри&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BloodyMary.png]]&amp;lt;br&amp;gt;(Bloody Mary)&lt;br /&gt;
|&lt;br /&gt;
*1 Vodka &lt;br /&gt;
*2 Tomato Juice &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Выводит одну единицу &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;токсинов&amp;lt;/font&amp;gt; из организма каждые 20 циклов метаболизации. &lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Козявка&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Boogerglass.png]]&amp;lt;br&amp;gt;(Booger)&lt;br /&gt;
|&lt;br /&gt;
*1 часть Cream&lt;br /&gt;
*1 Banana Juice &lt;br /&gt;
*1 Rum&lt;br /&gt;
*1 Watermelon Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Храбрый бык&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BraveBull.png]]&amp;lt;br&amp;gt;(Brave Bull)&lt;br /&gt;
|&lt;br /&gt;
*2 Tequila&lt;br /&gt;
*1 Kahlua&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Укол генокрада&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ChangelingSting.gif]]&amp;lt;br&amp;gt;(Changeling Sting)&lt;br /&gt;
|&lt;br /&gt;
*1 Lime Juice &lt;br /&gt;
*1 Lemon Juice &lt;br /&gt;
*1 Screwdriver&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
|Вызывает небольшую тряску экрана. Любой способ ввода кроме гипоспрея - не канон.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Классическое мартини&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ClassicMartini.png]]&amp;lt;br&amp;gt;(Classic Martini)&lt;br /&gt;
|&lt;br /&gt;
*2 Gin&lt;br /&gt;
*1 Vermouth&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Взболтать, но не смешивать.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Куба либре&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:CubaLibre.png]]&amp;lt;br&amp;gt;(Cuba Libre)&lt;br /&gt;
|&lt;br /&gt;
*2 Rum &lt;br /&gt;
*2 Cola &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Кровь демона&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Demonsbloodglass.gif]]&amp;lt;br&amp;gt;(Demons Blood)&lt;br /&gt;
|&lt;br /&gt;
*1 Space Mountain Wind &lt;br /&gt;
*1 часть Rum &lt;br /&gt;
*1 часть Blood&lt;br /&gt;
*1 часть Dr. Gibb&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Вызывает ощутимую тряску экрана&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Поцелуй дьявола&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:DevilsKiss.png]]&amp;lt;br&amp;gt;(Devil&#039;s Kiss)&lt;br /&gt;
|&lt;br /&gt;
*1 Blood &lt;br /&gt;
*1 Rum &lt;br /&gt;
*1 Kahlua&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Самое сухое мартини&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Driest Martini.png]]&amp;lt;br&amp;gt;(Driest Martini)&lt;br /&gt;
|&lt;br /&gt;
*1 Nothing &lt;br /&gt;
*1 Gin&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Вызывает тряску экрана. Насыщает на 1 за юнит. С 55 по 110 цикл у вас становится запутанная речь.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пьяный идиот&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Drunkenblumpkin.png]]&amp;lt;br&amp;gt;(Drunken Blumpkin)&lt;br /&gt;
|&lt;br /&gt;
*1 Blumpkin Juice &lt;br /&gt;
*1 Ice &lt;br /&gt;
*2 Irish Cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Напиток для напивающихся.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Эгг-Ног&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Eggnog.png]]&amp;lt;br&amp;gt;(Eggnog)&lt;br /&gt;
|&lt;br /&gt;
*5 Cream &lt;br /&gt;
*5 Egg &lt;br /&gt;
*5 Rum&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.1&#039;&#039;&#039;&lt;br /&gt;
|Насыщает организм на 2 за юнит.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Сюрприз Эрики&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ErikaSurprise.png]]&amp;lt;br&amp;gt;(Erika Surprise)&lt;br /&gt;
|&lt;br /&gt;
*1 Ale &lt;br /&gt;
*1 Lime Juice &lt;br /&gt;
*1 Whiskey &lt;br /&gt;
*1 Ice &lt;br /&gt;
*1 Banana Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Со вкусом разочарования.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Горящий Мо&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Flamingmoe.gif]]&amp;lt;br&amp;gt;(Flaming Moe)&lt;br /&gt;
|&lt;br /&gt;
*1 Cognac &lt;br /&gt;
*1 Gin &lt;br /&gt;
*1 Saline-Glucose Solution &lt;br /&gt;
*1 Tequila&lt;br /&gt;
*1 Vodka &lt;br /&gt;
  Температура 374K&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Джин-физ&amp;lt;br&amp;gt;&lt;br /&gt;
[[file:GinFizz.png]]&amp;lt;br&amp;gt;(Gin Fizz)&lt;br /&gt;
|&lt;br /&gt;
*2 Gin &lt;br /&gt;
*1 Soda Water &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Вызывает легкую тряску экрана.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Джин и соник&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:GinSonic.gif]]&amp;lt;br&amp;gt;(Gin and Sonic)&lt;br /&gt;
|&lt;br /&gt;
*1 Gin and Tonic&lt;br /&gt;
*1 Methamphetamine&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&lt;br /&gt;
|&lt;br /&gt;
*С 25% шансом бодрит, убирая большое количество рассеянности, тряски экрана и сна.&lt;br /&gt;
*С 8% шансом генерирует в кровь 1-2 единицы метамфетамина, крича фразу типичного Соника.&lt;br /&gt;
*С 50% шансом кричит в чат фразы типичного Соника.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Джин и тоник&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:GinTonic.png]]&amp;lt;br&amp;gt;(Gin and Tonic)&lt;br /&gt;
|&lt;br /&gt;
*2 Gin &lt;br /&gt;
*1 Tonic&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Гольдшлягер&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Goldschlagerglass.png]]&amp;lt;br&amp;gt;(Goldschlager)&lt;br /&gt;
|&lt;br /&gt;
*10 Vodka &lt;br /&gt;
*1 Gold&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Грог&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Grog.png]]&amp;lt;br&amp;gt;(Grog)&lt;br /&gt;
|&lt;br /&gt;
*1 Water &lt;br /&gt;
*1 Rum&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Распитие напитка одобрено корпорацией NanoTrasen&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Радость Хиппи&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:HippiesDelight.png]]&amp;lt;br&amp;gt;(Hippie&#039;s Delight)&lt;br /&gt;
|&lt;br /&gt;
*1 часть Psilocybin &lt;br /&gt;
*1 часть Gargle Blaster&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&lt;br /&gt;
|&lt;br /&gt;
*У вас появляется наркотический экран. С 1 цикла по 5 у вас нарушена речь и появляется нервный тик.&lt;br /&gt;
*С 5 по 10 цикл у вас увеличивается нервный тик и трясет экран.&lt;br /&gt;
*Начиная с 10 цикла тряска и тик начинают мешать нормальной игре.&lt;br /&gt;
Метаболизм - 0.2&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Бухло&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Hoochglass.png]]&amp;lt;br&amp;gt;(Hooch)&lt;br /&gt;
|&lt;br /&gt;
*2 Ethanol &lt;br /&gt;
*1 Welding Fuel &lt;br /&gt;
*1 Universal Enzyme &lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;1&#039;&#039;&#039;&lt;br /&gt;
|Вызывает тряску экрана. Лечит [[Ассистент|ассистентов]] на 1 урон от &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;ожогов&amp;lt;/font&amp;gt; и &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пиво со льдом&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:IcedBeer.png]]&amp;lt;br&amp;gt;(Iced Beer)&lt;br /&gt;
|&lt;br /&gt;
*10 Beer + 1 Frost Oil &lt;br /&gt;
&#039;&#039;ИЛИ&#039;&#039; &lt;br /&gt;
*5 Beer + 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Регулирует температуру горячих тел с шагом в 20 кельвинов.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Ирландская автомобильная бомба&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Irish Car Bomb.png]]&amp;lt;br&amp;gt;(Irish Car Bomb)&lt;br /&gt;
|&lt;br /&gt;
*1 Irish Cream &lt;br /&gt;
*1 часть Ale&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Вызывает легкую тряску экрана.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Ирландское кофе&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:IrishCoffee.png]]&amp;lt;br&amp;gt;(Irish Coffee)&lt;br /&gt;
|&lt;br /&gt;
*2 Irish Cream &lt;br /&gt;
*2 Coffee&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Ирландские сливки&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:IrishCream.png]]&amp;lt;br&amp;gt;(Irish Cream)&lt;br /&gt;
|&lt;br /&gt;
*2 Whiskey&lt;br /&gt;
*1 Cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Джек Роуз&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Patronglass.png]]&amp;lt;br&amp;gt;(Jackrose)&lt;br /&gt;
|&lt;br /&gt;
*4 Applejack&lt;br /&gt;
*1 Lemon Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Таков на вкус стиль.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Лонг-Айленд айс ти&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:LongIslandIcedTea.png]]&amp;lt;br&amp;gt;(Long Island Iced Tea)&lt;br /&gt;
|&lt;br /&gt;
*1 Vodka &lt;br /&gt;
*1 Gin &lt;br /&gt;
*1 Cuba Libre &lt;br /&gt;
*1 Tequila&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Обязательно говорите &amp;quot;айс ти&amp;quot;, а не &amp;quot;чай со льдом&amp;quot;, иначе вас примут за быдло.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Манхэттен&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Manhattan.png]]&amp;lt;br&amp;gt;(Manhattan)&lt;br /&gt;
|&lt;br /&gt;
*2 Whiskey&lt;br /&gt;
*1 Vermouth&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Проект &amp;quot;Манхэттен&amp;quot;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Manhattanprojglass.gif]]&amp;lt;br&amp;gt;(Manhattan Project)&lt;br /&gt;
|&lt;br /&gt;
*10 Manhattan&lt;br /&gt;
*1 Uranium&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Маргарита&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Margarita.png]]&amp;lt;br&amp;gt;(Margarita)&lt;br /&gt;
|&lt;br /&gt;
*2 Tequila &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Медовуха&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Mead.png]]&amp;lt;br&amp;gt;(Mead)&lt;br /&gt;
|&lt;br /&gt;
*1 Sugar &lt;br /&gt;
*1 Water &lt;br /&gt;
*5 Universal enzume как катализатор&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Медленно насыщает на 1 за юнит.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Мохито&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Mojito.png]]&amp;lt;br&amp;gt;(Mojito)&lt;br /&gt;
|&lt;br /&gt;
*1 Rum&lt;br /&gt;
*1 Lime Juice &lt;br /&gt;
*1 Sugar &lt;br /&gt;
*1 Soda Water&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Самогон&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:clearglass.png]]&amp;lt;br&amp;gt;(Moonshine)&lt;br /&gt;
|&lt;br /&gt;
*10 Nutriment&lt;br /&gt;
*5 Universal Enzyme&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.8&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Нейротоксин&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Neurotoxin.png]]&amp;lt;br&amp;gt;(Neuro-toxin)&lt;br /&gt;
|&lt;br /&gt;
*1 Ether&lt;br /&gt;
*1 Gargle Blaster&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
*С 13 цикла роняет вас на пол до тех пор, пока не выведется напиток.&lt;br /&gt;
*С 55 цикла добавляет продолжительные галлюцинации.&lt;br /&gt;
*с 200 цикла наносит 2 урона &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;токсинами&amp;lt;/font&amp;gt; в цикл.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пан-Галактический взрыв в горле&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:GargleBlaster.gif]]&amp;lt;br&amp;gt;(Pan-Galactic Gargle Blaster)&lt;br /&gt;
|&lt;br /&gt;
*1 Gin &lt;br /&gt;
*1 Vodka &lt;br /&gt;
*1 Whiskey &lt;br /&gt;
*1 Cognac &lt;br /&gt;
*1 Lime Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Радужное небо&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Радужное небо.gif|64px]]&amp;lt;br&amp;gt;(Rainbow sky)&lt;br /&gt;
|&lt;br /&gt;
*1 Doctor&#039;s delight&lt;br /&gt;
*1 Banana Honk &lt;br /&gt;
*1 Erica Surprise &lt;br /&gt;
*1 Screwdriver &lt;br /&gt;
*1 Pan-Galactic Gargle Blaster&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;1.5&#039;&#039;&#039;&lt;br /&gt;
|Все цвета радуги и немного даже космоса.&lt;br /&gt;
*Вызывает наркотический экран, сильные галлюцинации, несвязную речь и сильную тряску экрана.&lt;br /&gt;
*Исцеляет 1 урон от &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;травм&amp;lt;/font&amp;gt; и &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;ожогов&amp;lt;/font&amp;gt; в цикл.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Patron&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Patronglass.png]]&amp;lt;br&amp;gt;(Patron)&lt;br /&gt;
|&lt;br /&gt;
*10 Tequila &lt;br /&gt;
*1 Silver&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Красная медовуха&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:RedMead.png]]&amp;lt;br&amp;gt;(Red Mead)&lt;br /&gt;
|&lt;br /&gt;
*1 Mead &lt;br /&gt;
*1 Blood&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Напиток настоящих викингов.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Сбитень&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Sbiten.png]]&amp;lt;br&amp;gt;(Sbiten)&lt;br /&gt;
|&lt;br /&gt;
*1 Vodka &lt;br /&gt;
*1 Capsaicin&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Экстремально быстро возвращает в норму холодные тела с шагом в 50 кельвинов.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Отвёртка&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Screwdriver.png]]&amp;lt;br&amp;gt;(Screwdriver)&lt;br /&gt;
|&lt;br /&gt;
*2 Vodka &lt;br /&gt;
*1 Orange Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Сингуло&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:singuloglass.gif]]&amp;lt;br&amp;gt;(Singulo)&lt;br /&gt;
|&lt;br /&gt;
*5 Vodka &lt;br /&gt;
*1 Radium &lt;br /&gt;
*5 Wine&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
|Вызывает сильную тряску экрана&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Снежно белый&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:SnowWhite.png]]&amp;lt;br&amp;gt;(Snow White)&lt;br /&gt;
|&lt;br /&gt;
*1 Beer &lt;br /&gt;
*1 Lemon Lime&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Суисидр&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:suicider.png]]&amp;lt;br&amp;gt;(Suicider)&lt;br /&gt;
|&lt;br /&gt;
*1 Cider &lt;br /&gt;
*1 Vodka &lt;br /&gt;
*1 Welding Fuel &lt;br /&gt;
*1 Epinephrine&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;1&#039;&#039;&#039;&lt;br /&gt;
|Значительно трясет экран. Выпивая этот напиток, вы достигаете дна. Со вкусом наступающей смерти.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Бомба синдиката&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:SyndicateBomb.png]]&amp;lt;br&amp;gt;(Syndicate Bomb)&lt;br /&gt;
|&lt;br /&gt;
*1 Whiskey Cola&lt;br /&gt;
*1 Beer&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Текила санрайз&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TequillaSunrise.png]]&amp;lt;br&amp;gt;(Tequilla Sunrise)&lt;br /&gt;
|&lt;br /&gt;
*2 Tequila&lt;br /&gt;
*1 Orange Juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Мужественный дворф&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ManlyDorf.png]]&amp;lt;br&amp;gt;(The Manly Dorf)&lt;br /&gt;
|&lt;br /&gt;
*1 Beer&lt;br /&gt;
*2 Ale&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Холодный чай острова Три Мили&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:threemileislandglass.png]]&amp;lt;br&amp;gt;(Three Mile Island Iced Tea)&lt;br /&gt;
|&lt;br /&gt;
*10 &amp;quot;Long Island Iced Tea&amp;quot; &lt;br /&gt;
*1 Uranium&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Особый из токсикологии&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ToxinsSpecial.gif]]&amp;lt;br&amp;gt;(Toxins Special)&lt;br /&gt;
|&lt;br /&gt;
*2 Rum &lt;br /&gt;
*1 Vermouth &lt;br /&gt;
*2 Plasma&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Регулирует температуру слишком холодного тела с шагом в 15 кельвинов.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Водка мартини&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:VodkaMartini.png]]&amp;lt;br&amp;gt;(Vodka Martini)&lt;br /&gt;
|&lt;br /&gt;
*2 Vodka &lt;br /&gt;
*1 Vermouth&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Водка и тоник&amp;lt;br&amp;gt;&lt;br /&gt;
[[file:VodkaTonic.png]]&amp;lt;br&amp;gt;(Vodka and Tonic)&lt;br /&gt;
|&lt;br /&gt;
*2 Vodka &lt;br /&gt;
*1 Tonic&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Вызывает легкую тряску экрана&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Виски кола&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Wiskey_cola.png]]&amp;lt;br&amp;gt;(Whiskey Cola)&lt;br /&gt;
|&lt;br /&gt;
*2 Whiskey &lt;br /&gt;
*1 Cola&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Виски сода&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhiskeySoda.png]]&amp;lt;br&amp;gt;(Whiskey Soda)&lt;br /&gt;
|&lt;br /&gt;
*2 Whiskey &lt;br /&gt;
*1 Soda Water&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Белый русский&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhiteRussian.png]]&amp;lt;br&amp;gt;(White Russian)&lt;br /&gt;
|&lt;br /&gt;
*3 Black Russian&lt;br /&gt;
*2 Cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
|Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Мун&#039;лин&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Moonlindrink.png|64x64px]]&amp;lt;br&amp;gt;(Moonlin)&lt;br /&gt;
|&lt;br /&gt;
*Перемолоть сухой Moonlight в All-In-One Grinder.&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;N/A&#039;&#039;&#039;&lt;br /&gt;
|Обезболивающий, слегка расслабляющий напиток, после некоторого времени вызывает сонливый эффект, при передозировке наносит урон &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;токсинами&amp;lt;/font&amp;gt; 2-4 единиц за тик. Большой шанс зависимости. Имеет интересный эффект для расы [[таяран]].&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Мун&#039;дрин&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Moondrin.png|64x64px]]&amp;lt;br&amp;gt;(Moon&#039;drin)&lt;br /&gt;
|&lt;br /&gt;
*Сварить три [[Руководство_по_гидропонике#Особые_вещества|Moonlight]] в [[Руководство_по_еде_и_напиткам#Рецепты_бутылочницы|бутылочнице]].&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
|Двойной дистиллированный Мун&#039;лин. Мягкий мятный вкус, который любят все таяры. Используется в коктейлях. Очень маленький шанс зависимости.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Илукский синий Мун&#039;дрин&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Bluemoondrin.png|64x64px]]&amp;lt;br&amp;gt;(Iluk Blue Moon&#039;drin)&lt;br /&gt;
|&lt;br /&gt;
*3 Moon&#039;drin&lt;br /&gt;
*{{tooltip|1 Blue Lagoon (?)|(2 Blue Curacao, 2 Vodka, 1 Soda Water, 1 Ice)}}&lt;br /&gt;
*2 Martini&lt;br /&gt;
*1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
|Мягкий мятный вкус голубой Илукской подставы. Не подкладывайте напиток капитану! Маленький шанс зависимости.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Красноводный Мун&#039;дрин&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Redmoondrin.png|64x64px]]&amp;lt;br&amp;gt;(Redwater Moon&#039;drin)&lt;br /&gt;
|&lt;br /&gt;
*3 Moon&#039;drin&lt;br /&gt;
*1 Devil&#039;s Kiss&lt;br /&gt;
*2 Manhattan&lt;br /&gt;
*1 Watermelon Juice&lt;br /&gt;
*1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.9&#039;&#039;&#039;&lt;br /&gt;
|Незаконный на Адомае таярский напиток. Опасен, и признан домом Хадии сильнейшим наркотиком на основе мун&#039;дрина с &amp;quot;секретным&amp;quot; ингредиентом. Будьте осторожны с ним! Умеренный шанс зависимости.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Шампанское&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:champagneglass.png|64x64px]]&amp;lt;br&amp;gt;(Champagne)&lt;br /&gt;
|&lt;br /&gt;
* 1 Champagne&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Апероль&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:aperolglass.png|64x64px]]&amp;lt;br&amp;gt;(Aperol)&lt;br /&gt;
|&lt;br /&gt;
* 1 Aperol&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Джагермейстер&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:jagermeisterglass.png|64x64px]]&amp;lt;br&amp;gt;(Jagermeister)&lt;br /&gt;
|&lt;br /&gt;
* 1 Jagermeister&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Шнапс&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:schnapsglass.png|64x64px]]&amp;lt;br&amp;gt;(Schnaps)&lt;br /&gt;
|&lt;br /&gt;
* 1 Schnaps&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Самбука&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sambukaglass.png|64x64px]]&amp;lt;br&amp;gt;(Sambuka)&lt;br /&gt;
|&lt;br /&gt;
* 1 Sambuka&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.45&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Голубой Кюрасао&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:bluecuracaoglass.png|64x64px]]&amp;lt;br&amp;gt;(Blue Curacao)&lt;br /&gt;
|&lt;br /&gt;
* 1 Bluecuracao&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.35&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Горький&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:bitterglass.png|64x64px]]&amp;lt;br&amp;gt;(Bitter)&lt;br /&gt;
|&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.45&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Шеридан&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sheridanglass.png|64x64px]]&amp;lt;br&amp;gt;(Sheridan&#039;s)&lt;br /&gt;
|&lt;br /&gt;
* 1 Sheridan&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.35&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Чёрная кровь&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:black_blood.png|64x64px]]&amp;lt;br&amp;gt;(Black Blood)&lt;br /&gt;
|&lt;br /&gt;
* 2 Bluecuracao&lt;br /&gt;
* 1 Jagermeister&lt;br /&gt;
* 1 Soda water&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.45&#039;&#039;&#039;&lt;br /&gt;
| Заставляет при глотке с шансом в 50% прокричать случайное заклинание Культа Крови.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Лёгкий Шторм&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:light_storm.png|64x64px]]&amp;lt;br&amp;gt;(Light Storm)&lt;br /&gt;
|&lt;br /&gt;
* 2 Sheridan&lt;br /&gt;
* 1 Vodka&lt;br /&gt;
* 1 Sambuka&lt;br /&gt;
* 1 Cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Кремовый рай&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:cream_heaven.png|64x64px]]&amp;lt;br&amp;gt;(Cream Heaven)&lt;br /&gt;
|&lt;br /&gt;
* 2 Sheridan&lt;br /&gt;
* 2 Milk&lt;br /&gt;
* 1 Gin&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.25&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Негрони&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:negroni.png|64x64px]]&amp;lt;br&amp;gt;(Negroni)&lt;br /&gt;
|&lt;br /&gt;
* 2 Martini&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
* 2 Orange juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Хиросима&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:hirosima.png|64x64px]]&amp;lt;br&amp;gt;(Hirosima)&lt;br /&gt;
|&lt;br /&gt;
* 1 Grape juice&lt;br /&gt;
* 2 Sambuka&lt;br /&gt;
* 1 Absinthe&lt;br /&gt;
* 1 Irish cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Нагасаки&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:nagasaki.gif|64x64px]]&amp;lt;br&amp;gt;(Nagasaki)&lt;br /&gt;
|&lt;br /&gt;
* 10 Hirosima&lt;br /&gt;
* 1 Uranium&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Шоколад Шеридана&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:chocolate_sheridan.png|64x64px]]&amp;lt;br&amp;gt;(Chocolate Sheridan&#039;s)&lt;br /&gt;
|&lt;br /&gt;
* 5 Sheridan&lt;br /&gt;
* 1 Chocolate&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Панама&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:panamian.png|64x64px]]&amp;lt;br&amp;gt;(Panama)&lt;br /&gt;
|&lt;br /&gt;
* 1 Gintonic&lt;br /&gt;
* 2 Bluecuracao&lt;br /&gt;
* 1 Vodka&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Клуб Пегу&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:pegu_club.png|64x64px]]&amp;lt;br&amp;gt;(Pegu Club)&lt;br /&gt;
|&lt;br /&gt;
* 2 Gin&lt;br /&gt;
* 1 Orange juice&lt;br /&gt;
* 1 Lime juice&lt;br /&gt;
* 2 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Алкомендер&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:alcomender.png|64x64px]]&amp;lt;br&amp;gt;(Alcomender)&lt;br /&gt;
|&lt;br /&gt;
* 1 [[Руководство_по_фармакологии#Silver_Sulfadiazine|Сульфадиазин серебра]]&lt;br /&gt;
* 1 Ethanol&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;1.4&#039;&#039;&#039;&lt;br /&gt;
| Лечит ожоги&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Звездная Амнезия&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:amnesia.png|64x64px]]&amp;lt;br&amp;gt;(Star Amnesia)&lt;br /&gt;
|&lt;br /&gt;
* 1 Hooch&lt;br /&gt;
* 1 Vodka&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;1.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Серебряная рука&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:johnny.png|64x64px]]&amp;lt;br&amp;gt;(Silverhand)&lt;br /&gt;
|&lt;br /&gt;
* 2 Tequila&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
* 1 Beer&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Космополитен&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:cosmospoliten.png|64x64px]]&amp;lt;br&amp;gt;(Cosmospoliten)&lt;br /&gt;
|&lt;br /&gt;
* 2 Screwdriver cocktail&lt;br /&gt;
* 1 Orange juice&lt;br /&gt;
* 1 Lime juice&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Старая мода&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:oldfashion.png|64x64px]]&amp;lt;br&amp;gt;(Old Fashion)&lt;br /&gt;
|&lt;br /&gt;
* 5 Whiskey&lt;br /&gt;
* 2 Bitter&lt;br /&gt;
* 2 Sugar&lt;br /&gt;
* 1 Orange juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Французский 75&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:french_75.png|64x64px]]&amp;lt;br&amp;gt;(French 75)&lt;br /&gt;
|&lt;br /&gt;
* 2 Gin&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
* 2 Champagne&lt;br /&gt;
* 1 Sugar&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Молоко +&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:milk_plus.png|64x64px]]&amp;lt;br&amp;gt;(Milk +)&lt;br /&gt;
|&lt;br /&gt;
* 2 Absinthe&lt;br /&gt;
* 2 Irish cream&lt;br /&gt;
* 5 Milk&lt;br /&gt;
* 1 Sugar&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.8&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Бог Силы&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Teslasingylo.gif|64x64px]]&amp;lt;br&amp;gt;(God Of Power)&lt;br /&gt;
|&lt;br /&gt;
* 2 Teslium&lt;br /&gt;
* 2 Radium&lt;br /&gt;
* 1 Whiskey&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.7&#039;&#039;&#039;&lt;br /&gt;
| Содержит невиданную силу. Заряжает КПБ.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Свет&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:light.png|64x64px]]&amp;lt;br&amp;gt;(Light)&lt;br /&gt;
|&lt;br /&gt;
* 2 Orange juice&lt;br /&gt;
* 1 Mead&amp;lt;br&amp;gt;{{T|374}}&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Дает слабое ночное зрение, не работает с солнцезащитными очками.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пчелиные колени&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:bees_knees.png|64x64px]]&amp;lt;br&amp;gt;(Bee&#039;s Knees)&lt;br /&gt;
|&lt;br /&gt;
* 2 Gin&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
* 1 Lime juice&lt;br /&gt;
* 1 Honey или 3 Mead&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Авиация&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:aviation.png|64x64px]]&amp;lt;br&amp;gt;(Aviation)&lt;br /&gt;
|&lt;br /&gt;
* 2 Gin&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
* 1 Lemon lime&lt;br /&gt;
* 1 Cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Физз&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:fizz.png|64x64px]]&amp;lt;br&amp;gt;(Fizz)&lt;br /&gt;
|&lt;br /&gt;
* 4 Whiskey soda&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
* 2 Sugar&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Brandy Crusta&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:brandy_crusta.png|64x64px]]&amp;lt;br&amp;gt;(Brandy Crusta)&lt;br /&gt;
|&lt;br /&gt;
* 2 Whiskey&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Апероль Спритц&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:aperolspritz.png|64x64px]]&amp;lt;br&amp;gt;(Aperol Spritz)&lt;br /&gt;
|&lt;br /&gt;
* 4 Aperol&lt;br /&gt;
* 3 Wine&lt;br /&gt;
* 1 Soda water&lt;br /&gt;
* 2 Orange juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Коляска&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sidecar.png|64x64px]]&amp;lt;br&amp;gt;(Sidecar)&lt;br /&gt;
|&lt;br /&gt;
* 3 Cognac&lt;br /&gt;
* 2 Triple citrus&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Дайкири&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:daiquiri.png|64x64px]]&amp;lt;br&amp;gt;(Daiquiri)&lt;br /&gt;
|&lt;br /&gt;
* 3 Rum&lt;br /&gt;
* 2 Lime juice&lt;br /&gt;
* 1 Sugar&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Смокинг&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuxedo.png|64x64px]]&amp;lt;br&amp;gt;(Tuxedo)&lt;br /&gt;
|&lt;br /&gt;
* 2 Martini&lt;br /&gt;
* 2 Vermouth&lt;br /&gt;
* 1 Absinthe&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Телеголь&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Telegol.gif|64x64px]]&amp;lt;br&amp;gt;(Telegol)&lt;br /&gt;
|&lt;br /&gt;
* 2 Teslium&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 1 Dr. Gibb&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Лошадиная Шея&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:horse_neck.png|64x64px]]&amp;lt;br&amp;gt;(Horse Neck)&lt;br /&gt;
|&lt;br /&gt;
* 2 Whiskey&lt;br /&gt;
* 3 Ale&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Заставляет ржать с 50% шансом при глотке.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Кубинский Закат&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:cuban_sunset.png|64x64px]]&amp;lt;br&amp;gt;(Cuban Sunset)&lt;br /&gt;
|&lt;br /&gt;
* 3 Rum&lt;br /&gt;
* 2 Lemonade&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Бомба Саке&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sake_bomb.png|64x64px]]&amp;lt;br&amp;gt;(Sake Bomb)&lt;br /&gt;
|&lt;br /&gt;
* 2 Beer&lt;br /&gt;
* 2 Sake&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Голубые Гавайи&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:blue_havai.png|64x64px]]&amp;lt;br&amp;gt;(Blue Havai)&lt;br /&gt;
|&lt;br /&gt;
* 2 Rum&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 1 Bluecuracao&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Ву-Ву&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Woo_woo.gif|64x64px]]&amp;lt;br&amp;gt;(Woo Woo)&lt;br /&gt;
|&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 2 Schnaps&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Глинтвейн&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:mulled_wine.png|64x64px]]&amp;lt;br&amp;gt;(Mulled Wine)&lt;br /&gt;
|&lt;br /&gt;
* 2 Wine&lt;br /&gt;
* 2 Lemon juice&amp;lt;br&amp;gt;{{T|374}}&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Белый медведь&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:white_bear.png|64x64px]]&amp;lt;br&amp;gt;(White Bear)&lt;br /&gt;
|&lt;br /&gt;
* 2 Schnaps&lt;br /&gt;
* 1 Bream&lt;br /&gt;
* 2 Beer&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Вампиро&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:vampiro.png|64x64px]]&amp;lt;br&amp;gt;(Vampiro)&lt;br /&gt;
|&lt;br /&gt;
* 2 Tequila&lt;br /&gt;
* 1 Tomato juice&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.45&#039;&#039;&#039;&lt;br /&gt;
| Заставляет вспыхивать глаза выпившего, если в организме больше 20 юнитов напитка.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Королева Мария&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:queen_Mary.png|64x64px]]&amp;lt;br&amp;gt;(Queen Mary)&lt;br /&gt;
|&lt;br /&gt;
* 2 Beer&lt;br /&gt;
* 2 Berry juice&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.35&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Коробка&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:inabox.png|64x64px]]&amp;lt;br&amp;gt;(Box)&lt;br /&gt;
|&lt;br /&gt;
* 2 Gin&lt;br /&gt;
* 1 Potato&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Пиво королевской ягоды&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:beer_berry_royal.png|64x64px]]&amp;lt;br&amp;gt;(Beer Berry Royal)&lt;br /&gt;
|&lt;br /&gt;
* 2 Beer&lt;br /&gt;
* 2 Berry juice&lt;br /&gt;
* 1 Grape juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.25&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Сазерак&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sazerac.png|64x64px]]&amp;lt;br&amp;gt;(Sazerac)&lt;br /&gt;
|&lt;br /&gt;
* 1 Absinthe&lt;br /&gt;
* 1 Cognac&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
* 1 Whiskey&lt;br /&gt;
* 2 Water&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Монако&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:monako.png|64x64px]]&amp;lt;br&amp;gt;(Monako)&lt;br /&gt;
|&lt;br /&gt;
* 1 Gin&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
* 1 Lime juice&lt;br /&gt;
* 1 Berry juice&lt;br /&gt;
* 1 [[Руководство_по_фармакологии#Salt|Sodiumchloride]]&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Слаймовый напиток&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:slime_drink.png|64x64px]]&amp;lt;br&amp;gt;(Slime Drink)&lt;br /&gt;
|&lt;br /&gt;
* 5 Cherry jelly&lt;br /&gt;
* 2 Ice&lt;br /&gt;
* 1 Sugar&lt;br /&gt;
* 2 Gin&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.2&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Невинное ERP&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:innocent_erp.png|64x64px]]&amp;lt;br&amp;gt;(Innocent ERP)&lt;br /&gt;
|&lt;br /&gt;
* 3 Sambuka&lt;br /&gt;
* 1 Triple citrus&lt;br /&gt;
* 1 Irish cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Мерзкая Слякоть&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:nasty_slush.png|64x64px]]&amp;lt;br&amp;gt;(Nasty Slush)&lt;br /&gt;
|&lt;br /&gt;
* 2 Absinthe&lt;br /&gt;
* 2 Kahlua&lt;br /&gt;
* 1 Irish cream&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.55&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Голубая лагуна&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:blue_lagoon.png|64x64px]]&amp;lt;br&amp;gt;(Blue Lagoon)&lt;br /&gt;
|&lt;br /&gt;
* 2 Bluecuracao&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 1 Soda water&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Зеленая фея&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:green_fairy.png|64x64px]]&amp;lt;br&amp;gt;(Green Fairy)&lt;br /&gt;
|&lt;br /&gt;
* 1 Tequila&lt;br /&gt;
* 1 Absinthe&lt;br /&gt;
* 1 Vodka&lt;br /&gt;
* 1 Bluecuracao&lt;br /&gt;
* 1 Lemon juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.6&#039;&#039;&#039;&lt;br /&gt;
| Вызывает наркотический экран.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Дом Лебовски&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:home_lebovsky.png|64x64px]]&amp;lt;br&amp;gt;(Home Lebowski)&lt;br /&gt;
|&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 1 Coffee&lt;br /&gt;
* 1 Sugar&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.35&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Лучший счет&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:top_billing.png|64x64px]]&amp;lt;br&amp;gt;(Top Billing)&lt;br /&gt;
|&lt;br /&gt;
* 2 Vodka&lt;br /&gt;
* 1 Bluecuracao&lt;br /&gt;
* 2 Lemon juice&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Транс-Сибирский Экспресс&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:trans_siberian_express.png|64x64px]]&amp;lt;br&amp;gt;(Trans-Siberian Express)&lt;br /&gt;
|&lt;br /&gt;
* 3 Vodka&lt;br /&gt;
* 2 Lime juice&lt;br /&gt;
* 2 Carrot juice&lt;br /&gt;
* 1 Ice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.5&#039;&#039;&#039;&lt;br /&gt;
| Заставляет выпившего понимать Нео-Русский язык, а также говорить на нём, пока напиток находится в организме.&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Солнце&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sun.png|64x64px]]&amp;lt;br&amp;gt;(Sun)&lt;br /&gt;
|&lt;br /&gt;
* 2 Rum&lt;br /&gt;
* 2 Berry juice&lt;br /&gt;
* 1 Egg&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Тик-Ток&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tick_tack.png|64x64px]]&amp;lt;br&amp;gt;(Tick-Tock)&lt;br /&gt;
|&lt;br /&gt;
* 1 Sambuka&lt;br /&gt;
* 1 Watermelon juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.3&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Урагановый выстрел&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:uragan_shot.png|64x64px]]&amp;lt;br&amp;gt;(Uragan Shot)&lt;br /&gt;
|&lt;br /&gt;
* 1 Whiskey&lt;br /&gt;
* 1 Gin&lt;br /&gt;
* 1 Watermelon juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.35&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;background-color:#E3F3FF;&amp;quot;|Нью-Йоркер&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:new_yorker.png|64x64px]]&amp;lt;br&amp;gt;(New Yorker)&lt;br /&gt;
|&lt;br /&gt;
* 3 Whiskey&lt;br /&gt;
* 1 Bitter&lt;br /&gt;
* 2 Grape juice&lt;br /&gt;
* 1 Lime juice&lt;br /&gt;
|style=&amp;quot;text-align:center;&amp;quot;|&#039;&#039;&#039;0.4&#039;&#039;&#039;&lt;br /&gt;
| Нет&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Vladisvell</name></author>
	</entry>
</feed>