Модификации:Open source: различия между версиями

Материал из Stardew Valley Wiki
Перейти к навигации Перейти к поиску
м (Замена текста — «tt>» на «samp>»)
(fix link)
 
(не показаны 3 промежуточные версии 2 участников)
Строка 1: Строка 1:
 
←[[Модификации:Индекс|Индекс]]
 
←[[Модификации:Индекс|Индекс]]
{{Переведите}}
+
Мод является '''открытым''' если его код является общедоступным и покрыт [https://choosealicense.com/ открытой лицензией]. Моддерам настоятельно рекомендуется делать свои моды и пакеты контента с открытым исходным кодом.
A mod is '''open-source''' if its code is public and covered by [https://choosealicense.com/ an open-source license]. Modders are strongly encouraged to make their mods and content packs open-source.
 
  
==Why is open source important?==
+
==Почему важна открытость исходного кода?==
Open source is important for the long-term health of the modding community, and helps make the player experience smoother. Depending on the open-source license you choose, others can...
+
Открытый исходный код является ключевым элементом для долгосрочной поддержки сообщества моддинга и способствует более гладкому игровому опыту для игроков. В зависимости от выбранной лицензии с открытым исходным кодом другие люди могут...
  
* see your code;
+
* просматривать ваш код;
* make changes to a copy of the code;
+
* вносить изменения в копию кода;
* send you proposed updates, changes, and fixes;
+
* предлагать Вам обновления, изменения и исправления;
* prepare unofficial updates;
+
* подготавливать неофициальные обновления;
* better help users with support questions by looking at the code.
+
* лучше помогать пользователям с вопросами поддержки, просматривая код.
  
The effect can be significant: only 1% of open-source mods broke when SMAPI 3.0 released, compared to '''51%''' of closed-source mods (and that doesn't count closed-source mods that were never updated for recent game releases).
+
Эффект может быть значительным: всего 1% модов с открытым исходным кодом были повреждены при выпуске SMAPI 3.0, в сравнении с 51% закрытых модов (и это не учитывая закрытые моды, которые не обновлялись для последних релизов игры).
  
==Common questions==
+
==Часто задаваемые вопросы==
; What if I don't like a proposed change?
+
; Что, если мне не нравится предложенное изменение?
: You still have full control of your original code and mod pages; nobody can change those without your approval! You're free to reject a change someone proposes to your mod.
+
: Вы по-прежнему полностью контролируете свой исходный код и страницы мода; никто не может изменить их без вашего согласия! Вы вольны отклонить предложенное изменение, которое кто-то предлагает для вашего мода..
  
; What is a Git repository?
+
; Что такое репозиторий Git?
: Git is software that helps track changes to your code, and a repository is a folder containing your mod files with Git tracking. You can look up Git tutorials if you want to know more, but don't worry: you don't need to know how it works to use it!
+
: Git - это программное обеспечение, которое помогает отслеживать изменения в вашем коде, а репозиторий - это папка, содержащая файлы вашего мода с отслеживанием Git. Вы можете изучить уроки по Git, если хотите узнать больше, но не беспокойтесь: вам не нужно знать, как это работает, чтобы использовать это!
  
; Does this apply for content packs?
+
; Это распространяется на пакеты контента?
: Yep! Content packs aren't compiled, but other modders can't legally make changes without a code license. Note that 'permissions' options on sites like Nexus are legally iffy (e.g. who has copyright on derivatives? Can derivatives be relicensed?), so it's a good idea to have a code license for content packs too. That also lets other modders contribute pull requests and updates. When this page says 'code', it means everything in your content pack including JSON files, images, maps, etc.
+
: Да! Пакеты контента не компилируются, но другие моддеры не могут законно вносить изменения без лицензии на код. Обратите внимание, что варианты "разрешений" на сайтах вроде Nexus юридически сомнительны (например, кто владеет авторскими правами на производные? Могут ли производные быть лицензированы повторно?), поэтому имеет смысл иметь лицензию на код и для пакетов контента. Это также позволяет другим моддерам вносить запросы на изменения и обновления. Когда здесь говорится о "коде", подразумевается всё в вашем пакете контента, включая файлы JSON, изображения, карты и т.д.
  
==Make your code open-source==
+
==Сделайте свой код открытым==
===If your code is already on GitHub===
+
===Если ваш код уже находится на GitHub===
You're already almost done! You just need to [https://choosealicense.com/ choose an open-source license] (MIT License is a good choice if you're undecided), and [https://help.github.com/en/github/building-a-strong-community/adding-a-license-to-a-repository add a <samp>LICENSE</samp> file to the repository].
+
Вы почти закончили! Вам просто нужно [https://choosealicense.com/ выбрать открытую лицензию] (если вы ещё не определились, лицензия MIT - хороший выбор), и  [https://help.github.com/en/github/building-a-strong-community/adding-a-license-to-a-repository добавить файл <samp>LICENSE</samp> в репозиторий].
  
===If your code isn't on GitHub===
+
===Если ваш код не находится на GitHub===
This looks like a lot of steps, but don't worry: it's pretty straightforward, and you only need to do it once. If you need help, come ask in [[Modding:Community#Discord|#making-mods on the Stardew Valley Discord]]. :)
+
Кажется, что тут много шагов, но не волнуйтесь, это довольно просто и вам нужно сделать это всего один раз. Если вам нужна помощь, приходите и спрашивайте в канале [[Modding:Community#Discord|#making-mods на сервере Discord по Stardew Valley]]. :)
  
 
<dl>
 
<dl>
<dt>Create a Git repository</dt>
+
<dt>Создайте Git-репозиторий</dt>
<dd>First, let's create the public repository which will contain your code.
+
<dd>Во-первых, давайте создадим общедоступный репозиторий, который будет содержать ваш код.
  
 
<ol>
 
<ol>
<li>Create a [https://github.com/ GitHub] account.</li>
+
<li>Создайте [https://github.com/ GitHub] аккаунт.</li>
<li>Install [https://www.sourcetreeapp.com/ SourceTree] (Mac/Windows) or [https://www.gitkraken.com/ GitKraken] (Linux). When asked, link it to your GitHub account.</li>
+
<li>Установите [https://www.sourcetreeapp.com/ SourceTree] (Mac/Windows) или [https://www.gitkraken.com/ GitKraken] (Linux). При запросе привяжите его к своему аккаунту GitHub..</li>
<li>[https://help.github.com/articles/create-a-repo/ Create the repository on GitHub].
+
<li>[https://help.github.com/articles/create-a-repo/ Создайте репозиторий на GitHub].
  
Suggested settings (see [[:File:Modding - create GitHub repo.png|screenshot]]):
+
Рекомендуемые настройки (смотрите [[:File:Modding - create GitHub repo.png|скриншот]]):
# Repository name: consider ''StardewMods'' if you'll put all your mods in the same repository, otherwise use the name of your mod.
+
# Имя репозитория: рассмотрите ''StardewMods'' if you'll put all your mods in the same repository, otherwise use the name of your mod.
# Description: consider ''Mods for Stardew Valley.''
+
# Описание: рассмотрите ''Mods для Stardew Valley.''
# Initialize ... with a README: enable this option.
+
# Initialize ... with a README: включите эту опцию.
# Add <samp>.gitignore</samp>: leave this blank; we'll add our own later.
+
# Добавьте <samp>.gitignore</samp>: оставьте это поле пустым; мы добавим своё собственное позже.
# Add a license: [https://choosealicense.com/ choose a license] (MIT License is a good choice if you're undecided), and select it here.
+
# Добавьте лицензию: [https://choosealicense.com/ choose a license] (если вы ещё не определились, лицензия MIT - хороший выбор), и выберите её здесь.
# Click 'Create repository'.
+
# Нажмите 'Create repository'.
 
</li>
 
</li>
<li>On the repository page that appears, click the green "Clone or download" button and copy the URL:<br />[[File:Modding - copy GitHub repo URL.png]]</li>
+
<li>На появившейся странице репозитория нажмите зеленую кнопку "Clone or download" и скопируйте URL:<br />[[File:Modding - copy GitHub repo URL.png]]</li>
<li>In SourceTree, click ''File > Clone'' and paste the URL. Choose a destination path that's easy to access (like <samp>C:\source\StardewMods</samp>), and click 'Clone'.</li>
+
<li>В SourceTree, нажмите ''File > Clone'' и вставьте URL. Выберите путь, к которому есть лёгкий доступ (как <samp>C:\source\StardewMods</samp>), и нажмите 'Clone'.</li>
 
</ol>
 
</ol>
  
That's the hard part done! Now you have a repository on GitHub that's synced with the folder on your computer.</dd>
+
На этом сложная часть закончилась! Теперь у вас есть репозиторий на GitHub, который синхронизирован с папкой на вашей компьютере.</dd>
  
<dt>Add the mod files</dt>
+
<dt>Добавьте файлы мода</dt>
<dd>Next, let's add your files to the repository.
+
<dd>Теперь давайте добавим ваши файлы в репозиторий.
  
# Open the repository folder (the destination path you entered in step 5 above).
+
# Откройте папку репозитория  (путь назначения, который вы ввели выше).
# Unzip [https://github.com/StardewModders/Files/raw/master/template%20repo/gitattributes%20and%20gitignore.zip this zip file] into the folder. This will add two files to the root of your folder: <samp>.gitattributes</samp> (which normalises line endings between Linux/Mac/Windows) and <samp>.gitignore</samp> (which hides files which shouldn't be committed from Git). You just need to have them in your folder, you won't need to change them.
+
# Распакуйте [https://github.com/StardewModders/Files/raw/master/template%20repo/gitattributes%20and%20gitignore.zip этот zip файл] в папку. Это добавит два файла в корень вашей папки: <samp>.gitattributes</samp> (который нормализует концы строк между Linux/Mac/Windows) и <samp>.gitignore</samp> (который скрывает файлы, которые не должны быть зафиксированы в  Git). Вам просто нужно оставить их в вашей папке, вам не нужно их изменять.
# Copy your mod files (including the <samp>.sln</samp> file) into the folder.
+
# Скопируйте ваши файлы мода (включая файл <samp>.sln</samp>) в папку.
# Commit your changes in SourceTree:
+
# Зафиксируйте ваши изменения в SourceTree:
## Click Commit at the top.
+
## Нажмите "Commit" вверху.
## Click Stage All to add the files to your commit.
+
## Нажмите "Stage All" чтобы добавить файлы в вашу фиксацию.
## Enter a human-readable description for you changes in the textbox. The format is up to you, but "add initial mod files" is fine for now.
+
## Введите "человекочитаемое" описание ваших изменений в текстовом поле. Формат выбирайте сами, но "добавление начальных файлов мода" подойдёт на начальном этапе.
## Make sure "Push changes immediately" is ticked.
+
## Убедитесь, что "Push changes immediately" отмечено.
## Click "Commit".
+
## Нажмите "Commit".
  
That's it: all your files will appear on GitHub. Your mod is now open-source!</dd>
+
Вот и всё!: все ваши файлы появятся на GitHub. Ваш мод теперь с открытым исходным кодом!</dd>
  
<dt>Make changes</dt>
+
<dt>Внесите изменения</dt>
<dd>The steps above are all first-time setup. When you want to make changes, it's much easier:
+
<dd>Вышеуказанные шаги - это все настройки первого запуска. Когда вы захотите внести изменения, это намного проще:
  
# Edit your code in the repository folder.
+
# Измените свой код в папке репозитория..
# In SourceTree, commit and push your changes (see step 4 in the previous section).
+
# В SourceTree, зафиксируйте и отправьте ваши изменения (смотрите шаг 4 в предыдущей секции).
 
</dd>
 
</dd>
 
</dl>
 
</dl>
  
==See also==
+
==Смотрите также==
* [[Modding:Mod compatibility]] links to the source code for every SMAPI mod, where available.
+
* [[Modding:Mod compatibility]] ссылки на исходный код для каждого мода SMAPI, где это возможно.
  
 
[[Category:Модификации]]
 
[[Category:Модификации]]
  
 
[[en:Modding:Open source]]
 
[[en:Modding:Open source]]

Текущая версия на 22:07, 20 февраля 2024

Индекс Мод является открытым если его код является общедоступным и покрыт открытой лицензией. Моддерам настоятельно рекомендуется делать свои моды и пакеты контента с открытым исходным кодом.

Почему важна открытость исходного кода?

Открытый исходный код является ключевым элементом для долгосрочной поддержки сообщества моддинга и способствует более гладкому игровому опыту для игроков. В зависимости от выбранной лицензии с открытым исходным кодом другие люди могут...

  • просматривать ваш код;
  • вносить изменения в копию кода;
  • предлагать Вам обновления, изменения и исправления;
  • подготавливать неофициальные обновления;
  • лучше помогать пользователям с вопросами поддержки, просматривая код.

Эффект может быть значительным: всего 1% модов с открытым исходным кодом были повреждены при выпуске SMAPI 3.0, в сравнении с 51% закрытых модов (и это не учитывая закрытые моды, которые не обновлялись для последних релизов игры).

Часто задаваемые вопросы

Что, если мне не нравится предложенное изменение?
Вы по-прежнему полностью контролируете свой исходный код и страницы мода; никто не может изменить их без вашего согласия! Вы вольны отклонить предложенное изменение, которое кто-то предлагает для вашего мода..
Что такое репозиторий Git?
Git - это программное обеспечение, которое помогает отслеживать изменения в вашем коде, а репозиторий - это папка, содержащая файлы вашего мода с отслеживанием Git. Вы можете изучить уроки по Git, если хотите узнать больше, но не беспокойтесь: вам не нужно знать, как это работает, чтобы использовать это!
Это распространяется на пакеты контента?
Да! Пакеты контента не компилируются, но другие моддеры не могут законно вносить изменения без лицензии на код. Обратите внимание, что варианты "разрешений" на сайтах вроде Nexus юридически сомнительны (например, кто владеет авторскими правами на производные? Могут ли производные быть лицензированы повторно?), поэтому имеет смысл иметь лицензию на код и для пакетов контента. Это также позволяет другим моддерам вносить запросы на изменения и обновления. Когда здесь говорится о "коде", подразумевается всё в вашем пакете контента, включая файлы JSON, изображения, карты и т.д.

Сделайте свой код открытым

Если ваш код уже находится на GitHub

Вы почти закончили! Вам просто нужно выбрать открытую лицензию (если вы ещё не определились, лицензия MIT - хороший выбор), и добавить файл LICENSE в репозиторий.

Если ваш код не находится на GitHub

Кажется, что тут много шагов, но не волнуйтесь, это довольно просто и вам нужно сделать это всего один раз. Если вам нужна помощь, приходите и спрашивайте в канале #making-mods на сервере Discord по Stardew Valley. :)

Создайте Git-репозиторий
Во-первых, давайте создадим общедоступный репозиторий, который будет содержать ваш код.
  1. Создайте GitHub аккаунт.
  2. Установите SourceTree (Mac/Windows) или GitKraken (Linux). При запросе привяжите его к своему аккаунту GitHub..
  3. Создайте репозиторий на GitHub. Рекомендуемые настройки (смотрите скриншот):
    1. Имя репозитория: рассмотрите StardewMods if you'll put all your mods in the same repository, otherwise use the name of your mod.
    2. Описание: рассмотрите Mods для Stardew Valley.
    3. Initialize ... with a README: включите эту опцию.
    4. Добавьте .gitignore: оставьте это поле пустым; мы добавим своё собственное позже.
    5. Добавьте лицензию: choose a license (если вы ещё не определились, лицензия MIT - хороший выбор), и выберите её здесь.
    6. Нажмите 'Create repository'.
  4. На появившейся странице репозитория нажмите зеленую кнопку "Clone or download" и скопируйте URL:
    Modding - copy GitHub repo URL.png
  5. В SourceTree, нажмите File > Clone и вставьте URL. Выберите путь, к которому есть лёгкий доступ (как C:\source\StardewMods), и нажмите 'Clone'.
На этом сложная часть закончилась! Теперь у вас есть репозиторий на GitHub, который синхронизирован с папкой на вашей компьютере.
Добавьте файлы мода
Теперь давайте добавим ваши файлы в репозиторий.
  1. Откройте папку репозитория (путь назначения, который вы ввели выше).
  2. Распакуйте этот zip файл в папку. Это добавит два файла в корень вашей папки: .gitattributes (который нормализует концы строк между Linux/Mac/Windows) и .gitignore (который скрывает файлы, которые не должны быть зафиксированы в Git). Вам просто нужно оставить их в вашей папке, вам не нужно их изменять.
  3. Скопируйте ваши файлы мода (включая файл .sln) в папку.
  4. Зафиксируйте ваши изменения в SourceTree:
    1. Нажмите "Commit" вверху.
    2. Нажмите "Stage All" чтобы добавить файлы в вашу фиксацию.
    3. Введите "человекочитаемое" описание ваших изменений в текстовом поле. Формат выбирайте сами, но "добавление начальных файлов мода" подойдёт на начальном этапе.
    4. Убедитесь, что "Push changes immediately" отмечено.
    5. Нажмите "Commit".
Вот и всё!: все ваши файлы появятся на GitHub. Ваш мод теперь с открытым исходным кодом!
Внесите изменения
Вышеуказанные шаги - это все настройки первого запуска. Когда вы захотите внести изменения, это намного проще:
  1. Измените свой код в папке репозитория..
  2. В SourceTree, зафиксируйте и отправьте ваши изменения (смотрите шаг 4 в предыдущей секции).

Смотрите также

  • Modding:Mod compatibility ссылки на исходный код для каждого мода SMAPI, где это возможно.