From 3f0d9ecc491c918cd0a69bc9664b976cd16d7156 Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 11:25:19 +0300
Subject: [PATCH 1/7] =?UTF-8?q?Update=20README-=D0=A0=D1=83=D1=81=D1=81?=
=?UTF-8?q?=D0=BA=D0=B8=D0=B9.md=20(Russian)=20with=20localization=20impro?=
=?UTF-8?q?vements?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
...21\201\321\201\320\272\320\270\320\271.md" | 54 +++++++++----------
1 file changed, 26 insertions(+), 28 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index d04018da31..214a0cd826 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -2,7 +2,7 @@
[

](https://github.com/ExMod-Team/EXILED/actions/workflows/main.yml/badge.svg?branch=master)
-

+


@@ -10,22 +10,21 @@
-EXILED - низкоуровневый фреймворк для серверов SCP: Secret Laboratory. Он предлагает систему событий, которую разработчики могут использовать для различных манипуляций, изменения кода игры или реализации собственных функций. Все ивенты EXILED сделаны с помощью Harmony, это означает, что для их функционирования не требуется прямого редактирования серверных сборок, что позволяет получить два уникальных преимущества:
+EXILED - высокоуровневый фреймворк для серверов SCP: Secret Laboratory. Он предлагает систему событий, которую разработчики могут использовать для различных манипуляций, изменения кода игры или реализации собственных функций. Все ивенты EXILED сделаны с помощью Harmony, что исключает необходимость прямого редактирования серверных сборок. Это обеспечивает два важных преимущества:
- Во-первых, весь код фреймворка может быть свободно опубликован и распространен, что позволяет разработчикам лучше понять, *как* он работает, а также предложить свои предложения по дополнению или изменению его функций.
- Во-вторых, поскольку весь код, связанный с фреймворком, выполняется вне сборки сервера, такие вещи, как небольшие обновления игры, будут иметь незначительное влияние на фреймворк, если вообще будут иметь. Это делает его наиболее совместимым с будущими обновлениями игры, а также облегчает обновление, когда это *нужно* сделать.
-# Скачивание
-Установка EXILED может показаться более сложной, чем установка других фреймворков, но на самом деле она довольно проста.
-Как упоминалось выше, большая часть EXILED не содержится в файле Assembly-CSharp.dll сервера, однако в файл Assembly-CSharp.dll необходимо внести одно изменение, которое требуется для того, чтобы EXILED действительно *загружался* на сервер при запуске, чистая сборка игры с уже внесенными изменениями будет поставляться с релизами.
+# Установка
+Установка EXILED довольно проста. Она загружается через Plugin API Northwood. Именно поэтому в архиве ``Exiled.tar.gz``, доступном в релизах, находятся две папки: ``SCP Secret Laboratory`` и ``EXILED``. Просто переместите их в указанные ниже пути, и всё готово!
-Если вы решите использовать программу установки, она, при правильном запуске, "позаботится" об установке `Exiled.Loader`, `Exiled.Updater`, `Exiled.Permissions`, `Exiled.API` и `Exiled.Events`, а также о том, чтобы на вашем сервере был установлен правильный файл Assembly-CSharp.dll.
+Если вы выберете установку через инсталлятор, он автоматически выполнит все необходимые шаги.
# Windows
### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/Exiled.Installer/README.md))
-**Примечание**: Перед запуском программы установки убедитесь, что вы находитесь под пользователем, который запускает сервер, или у вас есть права администратора.
+**Примечание**: Убедитесь, что вы используете учётную запись, с которой запускается сервер, или обладаете правами администратора.
-- Скачайте **`Exiled.Installer-Win.exe` [отсюда](https://github.com/ExMod-Team/EXILED/releases)** (нажмите на Assets -> нажмите на Installer).
+- Скачайте **`Exiled.Installer-Win.exe` [отсюда](https://github.com/ExMod-Team/EXILED/releases)** (нажмите на Assets -> выберите Installer).
- Поместите его в папку вашего сервера (если вы еще не скачали выделенный сервер)
- Дважды щелкните **`Exiled.Installer.exe`** или **[скачайте этот .bat](https://www.dropbox.com/scl/fi/7yh0r3q0vdn6ic4rhuu3l/install-prerelease.bat?rlkey=99fwjbwy1xg61qgtak0qzb9rd&st=8xs4xks8&dl=1)** и поместите его в папку сервера для установки последней предварительной версии.
- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](#Установка-плагинов-Windows) ниже.
@@ -36,13 +35,13 @@ EXILED - низкоуровневый фреймворк для серверов
- Распакуйте его содержимое с помощью [7Zip](https://www.7-zip.org/) или [WinRar](https://www.win-rar.com/download.html?&L=6).
- Переместите папку **`EXILED`** в **`%appdata%`** *Примечание: Эта папка должна находиться в ``C:\Users\%UserName%\AppData\Roaming``, и ***НЕ*** ``C:\Users\%UserName%\AppData\Roaming\SCP Secret Laboratory``, и **ЭТО ДОЛЖНО** быть в (. ...)\AppData\Roaming, а не (...)\AppData\!*.
- Переместите **``SCP Secret Laboratory``** в **`%appdata%`**.
- - Windows 10:
- Напишите `%appdata%` в Cortana / значке поиска или в строке проводника Windows.
- - Любая другая версия Windows:
+ - Windows 10 & 11:
+ Введите `%appdata%` в Cortana, строку поиска или адресную строку проводника Windows.
+ - Другие версии Windows:
Нажмите Win + R и введите `%appdata%`.
-### Установка плагинов Windows
-Вот и все, теперь EXILED должен быть установлен и активен при следующей загрузке вашего сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно получайте новые плагины с **[нашего сервера Discord](https://discord.gg/PyUkWTg)**.
+### Установка плагинов
+На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно получайте новые плагины с **[нашего сервера Discord](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
- Переместите его в: ``C:\Users\%UserName%\AppData\Roaming\EXILED\Plugins`` (переместите его сюда, нажав Win + R, а затем написав `%appdata%`)
@@ -84,21 +83,20 @@ EXILED сам по себе предлагает некоторые опции
Более полные и активно обновляемые руководства вы найдете на [сайте EXILED](https://exmod-team.github.io/EXILED/).
-- Ваш плагин должен содержать класс, который наследуется от Exiled.API.Features.Plugin<>, если это не так, EXILED не загрузит ваш плагин при запуске сервера.
-- Когда плагин загружен, код в методе ``OnEnabled()`` вышеупомянутого класса срабатывает немедленно, он не ждет загрузки других плагинов. Он не ждет завершения процесса запуска сервера. ***Он не ждет ничего.*** При настройке метода ``OnEnabled()`` убедитесь, что вы не обращаетесь к вещам, которые еще не инициализированы сервером, таким как ServerConsole.Port или PlayerManager.localPlayer.
-- Если вам нужно получить доступ к вещам, которые не инициализированы до загрузки плагина, рекомендуется просто дождаться события WaitingForPlayers, если по какой-то причине вам нужно сделать это раньше, оберните код в цикл `` while(!x)``, который проверяет, что переменная/объект, который вам нужен, больше не является ``null``, прежде чем продолжить.
-- EXILED поддерживает динамическую перезагрузку сборок плагинов во время работы сервера. Это означает, что если вам нужно обновить плагин, это можно сделать без перезагрузки сервера, однако, если вы обновляете плагин в середине выполнения, плагин должен быть правильно настроен для поддержки этого, иначе у вас будут очень плохие времена. Обратитесь к разделу ``Динамические обновления`` для получения дополнительной информации и рекомендаций.
-- В EXILED ***НЕТ*** событий OnUpdate, OnFixedUpdate или OnLateUpdate. Если вам по какой-то причине нужно запускать код так часто, вы можете использовать MEC-корутину, которая ждет один кадр, 0.01f, или использовать временной слой, например Timing.FixedUpdate.
+Основные правила для разработчиков:
-### Отключение исправлений событий EXILED.
-***В настоящее время эта функция больше не поддерживается.***
+- Ваш плагин должен содержать класс, наследуемый от ``Exiled.API.Features.Plugin<>``. Иначе EXILED не загрузит его при запуске сервера.
+- Когда плагин загружен, код в методе ``OnEnabled()`` вышеупомянутого класса срабатывает немедленно, он не ждет загрузки других плагинов. Он не ждет завершения процесса запуска сервера. ***Он не ждет ничего.*** При настройке метода ``OnEnabled()`` убедитесь, что вы не обращаетесь к объектам, которые еще не инициализированы сервером, таким как ``ServerConsole.Port`` или ``PlayerManager.localPlayer``.
+- Если вам нужно получить доступ к элементам, которые не инициализированы до загрузки плагина, рекомендуется просто дождаться события ``WaitingForPlayers``, если по какой-то причине вам нужно сделать это раньше, оберните код в цикл `` while(!x)``, который проверяет, что переменная/объект, который вам нужен, больше не является ``null``, прежде чем продолжить.
+- EXILED поддерживает динамическую перезагрузку сборок плагинов во время выполнения, что позволяет обновлять плагин без перезапуска сервера. Однако для поддержки этой функции плагин должен быть корректно настроен. Обратитесь к разделу ``Динамические обновления`` для получения дополнительной информации и рекомендаций.
+- В EXILED ***НЕТ*** событий OnUpdate, OnFixedUpdate или OnLateUpdate. Если вам по какой-то причине нужно запускать код так часто, вы можете использовать MEC-корутину, которая ждет один кадр, 0.01f, или использовать временной слой, например Timing.FixedUpdate.
### MEC Coroutines
-Если вы незнакомы с MEC, это будет очень краткий и простой учебник, который поможет вам начать работу.
+Если вы не знакомы с MEC, это будет очень краткий и простой учебник, который поможет вам начать работу.
MEC Coroutines - это методы с таймером, которые поддерживают периоды ожидания перед продолжением выполнения, не прерывая основной поток игры.
-Корутины MEC безопасны для использования в Unity, в отличие от традиционной работы с потоками. ***НЕ пытайтесь создавать новые потоки для взаимодействия с Unity, они приведут к крашу сервера.***
+Они безопасны для использования с Unity, в отличие от традиционных потоков. ***НЕ пытайтесь создавать новые потоки для взаимодействия с Unity, они приведут к крашу сервера.***
-Чтобы использовать MEC, нужно будет добавить ссылку ``Assembly-CSharp-firstpass.dll`` из файлов сервера и написать ``using MEC;``.
+Для использования MEC добавьте ссылку на ``Assembly-CSharp-firstpass.dll`` из файлов сервера и напишите ``using MEC;``.
Пример вызова простой корутины, которая повторяет себя с задержкой между каждым циклом:
```cs
using MEC;
@@ -125,7 +123,7 @@ public IEnumerator MyCoroutine()
EXILED как фреймворк поддерживает динамическую перезагрузку сборок плагинов, не требуя перезагрузки сервера.
Например, если вы запускаете сервер с единственным плагином `Exiled.Events` и хотите добавить новый, вам не нужно перезагружать сервер для выполнения этой задачи. Вы можете просто использовать команду `reload plugins` в RemoteAdmin или в консоли сервера для перезагрузки всех плагинов EXILED, и загрузки новых, которые не были загружены ранее.
-Это также означает, что вы можете *обновлять* плагины без полной перезагрузки сервера. Однако есть несколько рекомендаций, которым должен следовать разработчик плагина, чтобы это было сделано правильно:
+Это также позволяет *обновлять* плагины без полной перезагрузки сервера. Однако, чтобы это было сделано должным образом, разработчик плагина должен следовать нескольким рекомендациям:
***Для хостеров***
- Если вы обновляете плагин, убедитесь, что имя его сборки не совпадает с именем текущей установленной версии (если таковая имеется). Чтобы это сработало, плагин должен быть создан разработчиком с учетом динамических обновлений, простое переименование файла не поможет.
@@ -135,12 +133,12 @@ EXILED как фреймворк поддерживает динамическу
***Для разработчиков***
- Плагины, которые хотят поддерживать динамическое обновление, должны отписываться от всех событий к которым они подключены, когда они отключены или перезагружены.
-- Плагины, имеющие пользовательские патчи Harmony, должны использовать какую-либо изменяемую переменную в имени экземпляра Harmony, и должны UnPatchAll() для своего экземпляра, когда плагин отключен или перезагружен.
-- Любые корутины, запущенные плагином в OnEnabled(), также должны быть завершены при отключении или перезагрузке плагина.
+- Плагины, имеющие собственные патчи Harmony, должны использовать какую-либо изменяемую переменную в имени экземпляра Harmony, и вызывать ``UnPatchAll()`` для своего экземпляра, когда плагин отключен или перезагружен.
+- Любые корутины, запущенные плагином в ``OnEnabled()``, также должны быть завершены при отключении или перезагрузке плагина.
-Все это можно сделать в методах OnReloaded() или OnDisabled() в классе плагина. Когда EXILED перезагружает плагины, он вызывает OnDisabled(), затем OnReloaded(), затем загружает новые сборки, а затем выполняет OnEnabled().
+Все это можно сделать в методах ``OnReloaded()`` или ``OnDisabled()`` в классе плагина. Когда EXILED перезагружает плагины, он вызывает ``OnDisabled()``, затем ``OnReloaded()``, затем загружает новые сборки, а затем выполняет ``OnEnabled()``.
-Обратите внимание, что я сказал *новые* сборки. Если вы замените сборку другой сборкой с таким же именем, она ***НЕ*** будет обновлена. Это связано с GAC (Global Assembly Cache), если вы попытаетесь "загрузить" сборку, которая уже находится в кэше, то вместо нее всегда будет использоваться кэшированная сборка.
+Обратите внимание, что загружаются именно *новые* сборки. Если вы замените сборку другой сборкой с таким же именем, она ***НЕ*** будет обновлена. Это связано с GAC (Global Assembly Cache), если вы попытаетесь "загрузить" сборку, которая уже находится в кэше, то вместо нее всегда будет использоваться кэшированная сборка.
По этой причине, если ваш плагин будет поддерживать динамические обновления, вы должны собирать каждую версию с другим именем сборки в опциях сборки (переименование файла не работает). Также, поскольку старая сборка не "уничтожается", то вы не сможете отписаться, распатчить ваш экземпляр, остановить корутины и т.д., этот код будет продолжать выполняться, как и код новой версии.
Это очень плохо.
From d4379e831d756994e2d3f738077a57d7e7bf92bc Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 13:08:04 +0300
Subject: [PATCH 2/7] Grammar corrections in README (RU)
---
...\240\321\203\321\201\321\201\320\272\320\270\320\271.md" | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index 214a0cd826..90be3539ec 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -16,7 +16,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Во-вторых, поскольку весь код, связанный с фреймворком, выполняется вне сборки сервера, такие вещи, как небольшие обновления игры, будут иметь незначительное влияние на фреймворк, если вообще будут иметь. Это делает его наиболее совместимым с будущими обновлениями игры, а также облегчает обновление, когда это *нужно* сделать.
# Установка
-Установка EXILED довольно проста. Она загружается через Plugin API Northwood. Именно поэтому в архиве ``Exiled.tar.gz``, доступном в релизах, находятся две папки: ``SCP Secret Laboratory`` и ``EXILED``. Просто переместите их в указанные ниже пути, и всё готово!
+Установка EXILED довольно проста. Она загружается через Plugin API Northwood. Именно поэтому в архиве ``Exiled.tar.gz``, доступном в релизах, находятся две папки: ``SCP Secret Laboratory`` и ``EXILED``. Просто переместите их в указанные ниже пути и всё готово!
Если вы выберете установку через инсталлятор, он автоматически выполнит все необходимые шаги.
@@ -88,7 +88,7 @@ EXILED сам по себе предлагает некоторые опции
- Ваш плагин должен содержать класс, наследуемый от ``Exiled.API.Features.Plugin<>``. Иначе EXILED не загрузит его при запуске сервера.
- Когда плагин загружен, код в методе ``OnEnabled()`` вышеупомянутого класса срабатывает немедленно, он не ждет загрузки других плагинов. Он не ждет завершения процесса запуска сервера. ***Он не ждет ничего.*** При настройке метода ``OnEnabled()`` убедитесь, что вы не обращаетесь к объектам, которые еще не инициализированы сервером, таким как ``ServerConsole.Port`` или ``PlayerManager.localPlayer``.
- Если вам нужно получить доступ к элементам, которые не инициализированы до загрузки плагина, рекомендуется просто дождаться события ``WaitingForPlayers``, если по какой-то причине вам нужно сделать это раньше, оберните код в цикл `` while(!x)``, который проверяет, что переменная/объект, который вам нужен, больше не является ``null``, прежде чем продолжить.
-- EXILED поддерживает динамическую перезагрузку сборок плагинов во время выполнения, что позволяет обновлять плагин без перезапуска сервера. Однако для поддержки этой функции плагин должен быть корректно настроен. Обратитесь к разделу ``Динамические обновления`` для получения дополнительной информации и рекомендаций.
+- EXILED поддерживает динамическую перезагрузку сборок плагинов во время выполнения, что позволяет обновлять плагин без перезапуска сервера, однако для поддержки этой функции плагин должен быть корректно настроен. Обратитесь к разделу ``Динамические обновления`` для получения дополнительной информации и рекомендаций.
- В EXILED ***НЕТ*** событий OnUpdate, OnFixedUpdate или OnLateUpdate. Если вам по какой-то причине нужно запускать код так часто, вы можете использовать MEC-корутину, которая ждет один кадр, 0.01f, или использовать временной слой, например Timing.FixedUpdate.
### MEC Coroutines
@@ -117,7 +117,7 @@ public IEnumerator MyCoroutine()
}
```
-***Настоятельно*** рекомендуется погуглить или спросить в Discord, если вы не знакомы с MEC и хотите узнать больше, получить совет или нуждаетесь в помощи. На вопросы, независимо от того, насколько они "глупые", всегда будут даны максимально полезные и понятные ответы, чтобы разработчики плагинов могли преуспеть. Лучший код лучше для всех.
+***Настоятельно*** рекомендуется погуглить или спросить в Discord, если вы не знакомы с MEC и хотите узнать больше, получить совет или нуждаетесь в помощи. На вопросы, независимо от того, насколько они "глупые" всегда будут даны максимально полезные и понятные ответы, чтобы разработчики плагинов могли преуспеть. Лучший код лучше для всех.
### Динамические обновления
EXILED как фреймворк поддерживает динамическую перезагрузку сборок плагинов, не требуя перезагрузки сервера.
From 654c1713e7c96ac255a487a3da763238f2dc2215 Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 14:30:48 +0300
Subject: [PATCH 3/7] Improving punctuation
---
...21\201\321\201\320\272\320\270\320\271.md" | 28 +++++++++----------
EXILED/EXILED.props | 2 +-
2 files changed, 15 insertions(+), 15 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index 90be3539ec..b8b58e4909 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -1,24 +1,24 @@
EXILED - EXtended In-runtime Library for External Development
-
+
[

](https://github.com/ExMod-Team/EXILED/actions/workflows/main.yml/badge.svg?branch=master)


-
-
+

+
-EXILED - высокоуровневый фреймворк для серверов SCP: Secret Laboratory. Он предлагает систему событий, которую разработчики могут использовать для различных манипуляций, изменения кода игры или реализации собственных функций. Все ивенты EXILED сделаны с помощью Harmony, что исключает необходимость прямого редактирования серверных сборок. Это обеспечивает два важных преимущества:
+EXILED - высокоуровневый фреймворк для серверов SCP: Secret Laboratory. Он предлагает систему событий, которую разработчики могут использовать для различных манипуляций, изменения кода игры или реализации собственных функций. Все события EXILED сделаны с помощью Harmony, что исключает необходимость прямого редактирования серверных сборок. Это обеспечивает два важных преимущества:
- Во-первых, весь код фреймворка может быть свободно опубликован и распространен, что позволяет разработчикам лучше понять, *как* он работает, а также предложить свои предложения по дополнению или изменению его функций.
- Во-вторых, поскольку весь код, связанный с фреймворком, выполняется вне сборки сервера, такие вещи, как небольшие обновления игры, будут иметь незначительное влияние на фреймворк, если вообще будут иметь. Это делает его наиболее совместимым с будущими обновлениями игры, а также облегчает обновление, когда это *нужно* сделать.
# Установка
-Установка EXILED довольно проста. Она загружается через Plugin API Northwood. Именно поэтому в архиве ``Exiled.tar.gz``, доступном в релизах, находятся две папки: ``SCP Secret Laboratory`` и ``EXILED``. Просто переместите их в указанные ниже пути и всё готово!
+Установка EXILED довольно проста. Он загружается через Plugin API Northwood. Именно поэтому в архиве ``Exiled.tar.gz``, доступном в релизах, находятся две папки: ``SCP Secret Laboratory`` и ``EXILED``. Просто переместите их в указанные ниже пути и всё готово!
-Если вы выберете установку через инсталлятор, он автоматически выполнит все необходимые шаги.
+Если вы выберете установку через установщик, он автоматически выполнит все необходимые шаги.
# Windows
### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/Exiled.Installer/README.md))
@@ -41,7 +41,7 @@ EXILED - высокоуровневый фреймворк для серверо
Нажмите Win + R и введите `%appdata%`.
### Установка плагинов
-На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно получайте новые плагины с **[нашего сервера Discord](https://discord.gg/PyUkWTg)**.
+На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно посмотрите плагины на **[нашем Discord сервере](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
- Переместите его в: ``C:\Users\%UserName%\AppData\Roaming\EXILED\Plugins`` (переместите его сюда, нажав Win + R, а затем написав `%appdata%`)
@@ -64,7 +64,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Переместите **`SCP Secret Laboratory`** папку в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, а ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv SCP Secret Laboratory ~/.config/`**)
- Переместите папку **`EXILED`** в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, и ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv EXILED ~/.config/`**)
-### Устaновка плагинов Linux
+### Установка плагинов Linux
Вот и все, теперь EXILED будет установлен и активен при следующей загрузке вашего сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно получайте новые плагины с **[нашего сервера Discord](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
@@ -87,16 +87,16 @@ EXILED сам по себе предлагает некоторые опции
- Ваш плагин должен содержать класс, наследуемый от ``Exiled.API.Features.Plugin<>``. Иначе EXILED не загрузит его при запуске сервера.
- Когда плагин загружен, код в методе ``OnEnabled()`` вышеупомянутого класса срабатывает немедленно, он не ждет загрузки других плагинов. Он не ждет завершения процесса запуска сервера. ***Он не ждет ничего.*** При настройке метода ``OnEnabled()`` убедитесь, что вы не обращаетесь к объектам, которые еще не инициализированы сервером, таким как ``ServerConsole.Port`` или ``PlayerManager.localPlayer``.
-- Если вам нужно получить доступ к элементам, которые не инициализированы до загрузки плагина, рекомендуется просто дождаться события ``WaitingForPlayers``, если по какой-то причине вам нужно сделать это раньше, оберните код в цикл `` while(!x)``, который проверяет, что переменная/объект, который вам нужен, больше не является ``null``, прежде чем продолжить.
+- Если вам нужно получить доступ к элементам, которые не инициализированы до загрузки плагина, рекомендуется просто дождаться события ``WaitingForPlayers``. Если по какой-либо причине вам нужно сделать это раньше, оберните код в цикл ``while(!x)``, который проверяет, что переменная/объект, который вам нужен, больше не является ``null``, прежде чем продолжить.
- EXILED поддерживает динамическую перезагрузку сборок плагинов во время выполнения, что позволяет обновлять плагин без перезапуска сервера, однако для поддержки этой функции плагин должен быть корректно настроен. Обратитесь к разделу ``Динамические обновления`` для получения дополнительной информации и рекомендаций.
-- В EXILED ***НЕТ*** событий OnUpdate, OnFixedUpdate или OnLateUpdate. Если вам по какой-то причине нужно запускать код так часто, вы можете использовать MEC-корутину, которая ждет один кадр, 0.01f, или использовать временной слой, например Timing.FixedUpdate.
+- В EXILED ***НЕТ*** событий OnUpdate, OnFixedUpdate или OnLateUpdate. Если вам по какой-либо причине нужно запускать код так часто, вы можете использовать MEC-корутину, которая ждет один кадр, 0.01f, или использовать временной слой, например Timing.FixedUpdate.
### MEC Coroutines
Если вы не знакомы с MEC, это будет очень краткий и простой учебник, который поможет вам начать работу.
MEC Coroutines - это методы с таймером, которые поддерживают периоды ожидания перед продолжением выполнения, не прерывая основной поток игры.
Они безопасны для использования с Unity, в отличие от традиционных потоков. ***НЕ пытайтесь создавать новые потоки для взаимодействия с Unity, они приведут к крашу сервера.***
-Для использования MEC добавьте ссылку на ``Assembly-CSharp-firstpass.dll`` из файлов сервера и напишите ``using MEC;``.
+Чтобы использовать MEC, добавьте ссылку на ``Assembly-CSharp-firstpass.dll`` из файлов сервера и напишите ``using MEC;``.
Пример вызова простой корутины, которая повторяет себя с задержкой между каждым циклом:
```cs
using MEC;
@@ -117,13 +117,13 @@ public IEnumerator MyCoroutine()
}
```
-***Настоятельно*** рекомендуется погуглить или спросить в Discord, если вы не знакомы с MEC и хотите узнать больше, получить совет или нуждаетесь в помощи. На вопросы, независимо от того, насколько они "глупые" всегда будут даны максимально полезные и понятные ответы, чтобы разработчики плагинов могли преуспеть. Лучший код лучше для всех.
+***Настоятельно*** рекомендуется погуглить или спросить в Discord, если вы не знакомы с MEC и хотите узнать больше, получить совет или нуждаетесь в помощи. На вопросы, независимо от того, насколько они "глупые", всегда будут даны максимально полезные и понятные ответы, чтобы разработчики плагинов могли преуспеть. Лучший код лучше для всех.
### Динамические обновления
EXILED как фреймворк поддерживает динамическую перезагрузку сборок плагинов, не требуя перезагрузки сервера.
Например, если вы запускаете сервер с единственным плагином `Exiled.Events` и хотите добавить новый, вам не нужно перезагружать сервер для выполнения этой задачи. Вы можете просто использовать команду `reload plugins` в RemoteAdmin или в консоли сервера для перезагрузки всех плагинов EXILED, и загрузки новых, которые не были загружены ранее.
-Это также позволяет *обновлять* плагины без полной перезагрузки сервера. Однако, чтобы это было сделано должным образом, разработчик плагина должен следовать нескольким рекомендациям:
+Это также позволяет *обновлять* плагины без полной перезагрузки сервера. Однако чтобы это было сделано должным образом, разработчик плагина должен следовать нескольким рекомендациям:
***Для хостеров***
- Если вы обновляете плагин, убедитесь, что имя его сборки не совпадает с именем текущей установленной версии (если таковая имеется). Чтобы это сработало, плагин должен быть создан разработчиком с учетом динамических обновлений, простое переименование файла не поможет.
@@ -144,6 +144,6 @@ EXILED как фреймворк поддерживает динамическу
Таким образом, плагины, поддерживающие динамические обновления, ***ОБЯЗАНЫ*** следовать этим рекомендациям, иначе они будут удалены с сервера Discord из-за потенциального риска для владельцев сервера.
-Но не каждый плагин должен поддерживать динамические обновления. Если вы не собираетесь поддерживать динамические обновления, это совершенно нормально, просто не меняйте имя сборки вашего плагина при создании новой версии, и вам не нужно будет беспокоиться ни о чем из этого, просто убедитесь, что владельцы серверов знают, что им нужно будет полностью перезагрузить свои серверы для обновления вашего плагина.
+Но не каждый плагин должен поддерживать динамические обновления. Если вы не собираетесь поддерживать динамические обновления, это совершенно нормально, просто не меняйте имя сборки плагина при создании новой версии. В этом случае не нужно беспокоиться о других аспектах. Убедитесь, что владельцы серверов знают, что для обновления плагина потребуется полная перезагрузка серверов.
Перевод сделал Ficus-x при помощи IRacle и Remuchi.
diff --git a/EXILED/EXILED.props b/EXILED/EXILED.props
index 62d6e57cd7..b4aecc1f33 100644
--- a/EXILED/EXILED.props
+++ b/EXILED/EXILED.props
@@ -15,7 +15,7 @@
- 8.14.1
+ 8.14.0
false
From 2c02e594f7e5275afab8995aa9e8beaec2b94d07 Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 14:58:39 +0300
Subject: [PATCH 4/7] Fixing the clickability of hyperlinks
---
...203\321\201\321\201\320\272\320\270\320\271.md" | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index b8b58e4909..f503625468 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -21,18 +21,18 @@ EXILED - высокоуровневый фреймворк для серверо
Если вы выберете установку через установщик, он автоматически выполнит все необходимые шаги.
# Windows
-### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/Exiled.Installer/README.md))
+### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/EXILED/Exiled.Installer/README.md))
**Примечание**: Убедитесь, что вы используете учётную запись, с которой запускается сервер, или обладаете правами администратора.
- Скачайте **`Exiled.Installer-Win.exe` [отсюда](https://github.com/ExMod-Team/EXILED/releases)** (нажмите на Assets -> выберите Installer).
- Поместите его в папку вашего сервера (если вы еще не скачали выделенный сервер)
- Дважды щелкните **`Exiled.Installer.exe`** или **[скачайте этот .bat](https://www.dropbox.com/scl/fi/7yh0r3q0vdn6ic4rhuu3l/install-prerelease.bat?rlkey=99fwjbwy1xg61qgtak0qzb9rd&st=8xs4xks8&dl=1)** и поместите его в папку сервера для установки последней предварительной версии.
-- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](#Установка-плагинов-Windows) ниже.
+- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md) ниже.
**Примечание:** Если вы устанавливаете EXILED на удаленный сервер, убедитесь, что вы запустили .exe от имени того же пользователя, который запускает ваши серверы SCP:SL (или пользователя с правами администратора).
### Установка вручную
- Скачайте **`Exiled.tar.gz` [отсюда](https://github.com/ExMod-Team/EXILED/releases)**.
-- Распакуйте его содержимое с помощью [7Zip](https://www.7-zip.org/) или [WinRar](https://www.win-rar.com/download.html?&L=6).
+- Распакуйте его содержимое с помощью [7Zip](https://www.7-zip.org/) или [WinRar](https://www.win-rar.com/download.html).
- Переместите папку **`EXILED`** в **`%appdata%`** *Примечание: Эта папка должна находиться в ``C:\Users\%UserName%\AppData\Roaming``, и ***НЕ*** ``C:\Users\%UserName%\AppData\Roaming\SCP Secret Laboratory``, и **ЭТО ДОЛЖНО** быть в (. ...)\AppData\Roaming, а не (...)\AppData\!*.
- Переместите **``SCP Secret Laboratory``** в **`%appdata%`**.
- Windows 10 & 11:
@@ -55,7 +55,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Установите его, набрав **`./Exiled.Installer-Linux --path /путь/к/серверу`** или переместив его в папку сервера напрямую, перейдите в нее с помощью терминала (`cd`) и наберите: **`./Exiled.Installer-Linux`**.
- Если вам нужна последняя предварительная версия, просто добавьте **`--pre-releases`**. Пример: **`./Exiled.Installer-Linux /home/scp/server --pre-releases`**.
- Другой пример, если вы поместили `Exiled.Installer-Linux` в папку вашего сервера: **`/home/scp/server/Exiled.Installer-Linux --pre-releases`**
-- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](#устaновка-плагинов-Linux) ниже.
+- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md) ниже.
### Установка вручную
- **Убедитесь**, что вы вошли в систему под пользователем, который запускает SCP-серверы.
@@ -64,8 +64,8 @@ EXILED - высокоуровневый фреймворк для серверо
- Переместите **`SCP Secret Laboratory`** папку в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, а ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv SCP Secret Laboratory ~/.config/`**)
- Переместите папку **`EXILED`** в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, и ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv EXILED ~/.config/`**)
-### Установка плагинов Linux
-Вот и все, теперь EXILED будет установлен и активен при следующей загрузке вашего сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно получайте новые плагины с **[нашего сервера Discord](https://discord.gg/PyUkWTg)**.
+### Установка плагинов
+На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно посмотрите плагины на **[нашем Discord сервере](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
- Переместите его в: ``~/.config/EXILED/Plugins`` (если вы используете SSH как root, то ищите нужный `.config`, который будет находиться в `/home/(SCP Server User)``)
@@ -79,7 +79,7 @@ EXILED сам по себе предлагает некоторые опции
# Для разработчиков
-Если вы хотите создать плагин для EXILED, сделать это довольно просто. Если вы хотите получить более подробное руководство, посетите нашу страницу [Начало работы](GettingStarted.md).
+Если вы хотите создать плагин для EXILED, сделать это довольно просто. Если вы хотите получить более подробное руководство, посетите нашу страницу [Начало работы](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md).
Более полные и активно обновляемые руководства вы найдете на [сайте EXILED](https://exmod-team.github.io/EXILED/).
From 8be5b28a9698ce67eeef0bdd16028d41aea1ef19 Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 15:01:51 +0300
Subject: [PATCH 5/7] Maybe that wasn't such a great idea
---
...40\321\203\321\201\321\201\320\272\320\270\320\271.md" | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index f503625468..3a1397627b 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -27,7 +27,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Скачайте **`Exiled.Installer-Win.exe` [отсюда](https://github.com/ExMod-Team/EXILED/releases)** (нажмите на Assets -> выберите Installer).
- Поместите его в папку вашего сервера (если вы еще не скачали выделенный сервер)
- Дважды щелкните **`Exiled.Installer.exe`** или **[скачайте этот .bat](https://www.dropbox.com/scl/fi/7yh0r3q0vdn6ic4rhuu3l/install-prerelease.bat?rlkey=99fwjbwy1xg61qgtak0qzb9rd&st=8xs4xks8&dl=1)** и поместите его в папку сервера для установки последней предварительной версии.
-- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md) ниже.
+- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](#установка-плагинов-windows) ниже.
**Примечание:** Если вы устанавливаете EXILED на удаленный сервер, убедитесь, что вы запустили .exe от имени того же пользователя, который запускает ваши серверы SCP:SL (или пользователя с правами администратора).
### Установка вручную
@@ -40,7 +40,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Другие версии Windows:
Нажмите Win + R и введите `%appdata%`.
-### Установка плагинов
+### Установка плагинов Windows
На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно посмотрите плагины на **[нашем Discord сервере](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
@@ -55,7 +55,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Установите его, набрав **`./Exiled.Installer-Linux --path /путь/к/серверу`** или переместив его в папку сервера напрямую, перейдите в нее с помощью терминала (`cd`) и наберите: **`./Exiled.Installer-Linux`**.
- Если вам нужна последняя предварительная версия, просто добавьте **`--pre-releases`**. Пример: **`./Exiled.Installer-Linux /home/scp/server --pre-releases`**.
- Другой пример, если вы поместили `Exiled.Installer-Linux` в папку вашего сервера: **`/home/scp/server/Exiled.Installer-Linux --pre-releases`**
-- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md) ниже.
+- Чтобы установить и получить плагины, ознакомьтесь с разделом [Установка плагинов](#установка-плагинов-linux) ниже.
### Установка вручную
- **Убедитесь**, что вы вошли в систему под пользователем, который запускает SCP-серверы.
@@ -64,7 +64,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Переместите **`SCP Secret Laboratory`** папку в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, а ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv SCP Secret Laboratory ~/.config/`**)
- Переместите папку **`EXILED`** в **``~/.config``**. *Примечание: Эта папка должна находиться в ``~/.config``, и ***НЕ В*** ``~/.config/SCP Secret Laboratory``* (SSH: **`mv EXILED ~/.config/`**)
-### Установка плагинов
+### Установка плагинов Linux
На этом установка EXILED завершена, и он будет активен при следующем запуске сервера. Обратите внимание, что EXILED сам по себе почти ничего не делает, поэтому обязательно посмотрите плагины на **[нашем Discord сервере](https://discord.gg/PyUkWTg)**.
- Чтобы установить плагин, просто:
- Скачайте плагин с [*их* страницы релизов](https://i.imgur.com/u34wgPD.jpg) (**он ДОЛЖЕН быть `.dll`!**)
From 867cc8727aa6af0772ebc3c68dbf85927703bbc2 Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 15:38:30 +0300
Subject: [PATCH 6/7] Cutting the link
---
...\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index 3a1397627b..c06bec74d8 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -79,7 +79,7 @@ EXILED сам по себе предлагает некоторые опции
# Для разработчиков
-Если вы хотите создать плагин для EXILED, сделать это довольно просто. Если вы хотите получить более подробное руководство, посетите нашу страницу [Начало работы](https://github.com/ExMod-Team/EXILED/blob/master/.github/documentation/GettingStarted.md).
+Если вы хотите создать плагин для EXILED, сделать это довольно просто. Если вы хотите получить более подробное руководство, посетите нашу страницу [Начало работы](../GettingStarted.md).
Более полные и активно обновляемые руководства вы найдете на [сайте EXILED](https://exmod-team.github.io/EXILED/).
From b9cb0bbd9e1d8f906abb7a9bd87fe6a87724522c Mon Sep 17 00:00:00 2001
From: Jiraya <177346249+intjiraya@users.noreply.github.com>
Date: Sat, 16 Nov 2024 15:44:26 +0300
Subject: [PATCH 7/7] Cutting the links 2
---
...20\240\321\203\321\201\321\201\320\272\320\270\320\271.md" | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md" "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
index c06bec74d8..1c19fddaa8 100644
--- "a/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
+++ "b/.github/documentation/localization/README-\320\240\321\203\321\201\321\201\320\272\320\270\320\271.md"
@@ -21,7 +21,7 @@ EXILED - высокоуровневый фреймворк для серверо
Если вы выберете установку через установщик, он автоматически выполнит все необходимые шаги.
# Windows
-### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/EXILED/Exiled.Installer/README.md))
+### Автоматическая установка ([подробнее](../../../EXILED/Exiled.Installer/README.md))
**Примечание**: Убедитесь, что вы используете учётную запись, с которой запускается сервер, или обладаете правами администратора.
- Скачайте **`Exiled.Installer-Win.exe` [отсюда](https://github.com/ExMod-Team/EXILED/releases)** (нажмите на Assets -> выберите Installer).
@@ -47,7 +47,7 @@ EXILED - высокоуровневый фреймворк для серверо
- Переместите его в: ``C:\Users\%UserName%\AppData\Roaming\EXILED\Plugins`` (переместите его сюда, нажав Win + R, а затем написав `%appdata%`)
# Linux
-### Автоматическая установка ([подробнее](https://github.com/ExMod-Team/EXILED/blob/master/Exiled.Installer/README.md))
+### Автоматическая установка ([подробнее](../../../EXILED/Exiled.Installer/README.md))
**Примечание:** Если вы устанавливаете EXILED на удаленный сервер, убедитесь, что вы запускаете программу установки от имени того же пользователя, который запускает ваши серверы SCP:SL (или root).