Downloading the source code: различия между версиями

Материал из Chaotic Onyx
Перейти к навигацииПерейти к поиску
 
(не показаны 34 промежуточные версии 17 участников)
Строка 1: Строка 1:
 
{{Заготовка}}
 
{{Заготовка}}
 
This page contains the information and steps needed to download the latest version of the code, compile it and host your own server.
 
 
{{toc_right}}
 
{{toc_right}}
<div class="toccolours mw-collapsible mw-collapsed" style="width:99%">
 
  
'''/tg/station 13'''
+
Эта страница содержит информацию о том, как скачать, настроить и запустить свой собственный локальный сервер, также иногда называемый "локалкой". Полезно для тестирования возможностей в игре без риска нанесения вреда другим игрокам.
<div class="mw-collapsible-content">
 
== /tg/station 13 Лицензирование ==
 
Параметр /tg/station 13 исходный код под [http://www.gnu.org/licenses/agpl-3.0.html GNU AGPL v3 license] и активы[http://freedomdefined.org/Licenses/CC-BY-SA CC-BY-SA].
 
  
== Загрузка ==
+
= Загрузка =
  
Мы используем GitHub для скачивания проекта.
+
Мы используем GitHub в качестве репозитория для нашего проекта. На нём можно просматривать все файлы билда и при необходимости скачивать отдельные его части или даже индивидуальные файлы. Но для запуска локального сервера потребуется скачать весь билд.
  
Зип можно скачать тут: [https://github.com/tgstation/-tg-station]
+
'''Различные билды игры:'''
 +
*[https://github.com/ChaoticOnyx/OnyxBay/tree/release/onyx Актуальный релиз билда Оникса OnyxBay, основан на Baystation12]
 +
*[https://github.com/ChaoticOnyx/OnyxBay/tree/release/chaotic Билд Хаотичного Оникса]
 +
*[https://github.com/Baystation12/Baystation12 Оригинальный Baystation12]
 +
*[https://github.com/tgstation/tgstation /tg/station]
 +
*[https://github.com/SS13/luna/tree/e13cf12d2e591d01db76c5cf6fa28412376d11d2 Luna]
  
Если вы не хотите, скачивать до 30 Мб данных каждый раз, когда идёт обновление,то вы можете [[Setting up git|follow this guide]] для настройки TortoiseGit.
+
=Baystation12. Загрузка. Настройка. Запуск.=
 
+
# Установите BYOND и создайте аккаунт на сайте http://www.byond.com/ 
== "I did not change anything, but the code does not work anymore!" ==
+
# Откройте файл '''baystation12.dme'''.
 
+
# В самом верху, в меню, нажмите Build > Compile.
This is likely due to corrupted files.
+
#* Время компиляции зависит от характеристик вашего ПК. Примерное время ожидания колеблется от 2х до 10ти минут. Как только компил завершится, вы увидите сообщение:
To fix this, you need to:
+
#*; ''saving baystation12.dmb (DEBUG mode)''
 
+
#*; ''baystation12.dmb - 0 errors, 0 warnings''
*Re-download everything
+
#* Если вы видите какие-то ошибки или предупреждения, значит что-то явно пошло не так, скорее всего код был скачан не полностью или с ошибками.
*Copy over your config folder and the data folder
+
# Зайдите в папку "config" . В ней вы увидите под-папку "example", в ней находятся примеры всех конфиг-файлов; скопируйте их все в папку "config" и смело редактируйте  на ваш вкус. Вам необходимо изменить файл '''config.txt''' чтобы установить шанс выпадения того или иного игрового режима в режиме Secret. Так же в этом файле вы сможете настроить свой сервер, например, чтобы игрокам не приходилось перезаходить после рестарта в конце раунда . Рекомендуется не ставить шанс выпадения игрового режима на 0, за исключением режима Extedent, т.к. никто еще не пробовал совмещать несколько режимов в один, это может привести к серьезным ошибкам. Extended это такой игровой режим, при котором нет ничего. Просто обычный раунд без каких-либо событий или спец.ролей, поэтому ему и не добавили шанс выпадения при режиме Secret.
*Clean compile
+
# Откройте файл '''admins.txt''' и удалите стандартных администраторов, добавив свой ник вместо них. Приведем несколько доступных рангов(с самого высокого до самого низкого): '''Game Master''', '''Game Admin''', '''Moderator'''. Ранг '''Host''' является самым высоким и позволяет использовать все доступные команды. Этот ранг особенно полезен в том случае, если вы создаете свой приватный сервер для тестирования чего-нибудь.
 
+
#* Содержание файла admins.txt должно быть таким:
(There is no good alternative to this with TortoiseGit)
+
#*; byondkey - Rank
 
+
#* ...where the BYOND key must be in lowercase and the admin rank must be properly capitalized.  Additional levels and specific commands accessible by each level can be seen in /code/modules/admin/admin_verbs.dm. (Check to be sure you've removed the # comment tag if you copy the format over from the example rank.)
== Hosting a server ==
 
  
To get a simple server running first
+
=Запуск сервера=
* Download the source code as explained [[Downloading_the_source_code#Downloading|above]]
+
# Для начала вам необходимо запустить BYOND, авторизоваться в нем, а затем нажать "Start Dream Daemon..." в меню.  
* Open tgstation.dme in dream maker (double click it)
+
# В низу вы увидите поле, в котором нужно указать путь до файла baystation12.dmb.
* Once it opens select Build > Compile
+
# Выставите в поле '''Port''' то значение, которое вы указали в файле config.txt.
* Wait until it compiles. Once it does a new file "tgstation.dmb" will be created in the same folder where "tgstation.dme" is. The dmb file has an orange icon. Compile time usually takes between 1 and 10 minutes, depending on your computer. Dream maker will show as 'not responding' during this time, but it is compiling.
+
#* На заметку: Если вы запускаете сервер просто для локального теста, порт можно оставить пустым, порт будет выбран случайно. Однако, если вы выставите свой порт, он будет сохранен и при каждом новом запуске вам не придется выставлять его заного. К примеру, вы можете выставить порт 50000.
* Open dream daemon (Win7: start menu > all programs > BYOND > Dream Daemon; Win8: start > type Dream Daemon > Dream Daemon)
+
# '''Безопасность:''' (Рекомендуется использовать режим Trusted. Вы можете использовать и режим Safe, если хотите, но вам придется каждый раз нажимать на предупреждающее окошко, когда будет загружаться файл info.json)
* Select the "..." in the lower right corner and select the file "tgstation.dmb".
+
#* '''Доверенный (trusted)''' режим, дающий право игре на доступ к файлам, выполнению системных команд и тому подобным вещам, не требуя при этом вашего разрешения. Это не самая лучшая идея в случае когда вы делаете игру не только для себя, особенно если вы не имеете возможности проследить за ней.
* Click the "GO" button and wait until it changes to a red "stop" button. Starting the server usually takes between 1 and 5 minutes. It is fully started once you can normally interact with Dream Daemon and a byond://xxx.xxx.xxx.xxx:xxxxx link is present at the bottom.
+
#* '''Надёжный (safe)''' режим, ставится по умолчанию. Игра имеет доступ только к файлам в папке, в которой находится .dmb файл билда, а также к файлам во всех подпапках. Большинство действий, таких как выполнение системных команд, требуют вашего подтверждения.
* Click the yellow button (former "...") to auto-join
+
#* '''Сверхнадёжный (ultrasafe)''' режим, подразумевающий что ни одно действие влияющее на систему, выполнено без вашего согласия не будет. Этот режим предназначен для полного сохранения игровых файлов, но из-за неудобности используется редко.
* Left click the link (byond://xxx.xxx.xxx.xxx:xxxxx) to copy it to clipboard
+
# '''Видимость:''' (Invisible рекомендован)
* Paste the link (ctrl+v) to your friends so they can join.
+
#* '''Открытый(public)''' режим, ставится по умолчанию. Ваша игра будет видна всем на [http://www.byond.com/games/Exadv1/SpaceStation13 hub].
 +
#* '''Ограниченный(private)''' режим позволяет вашим друзьям присоединиться к вашей игре. Также, если они подключатся к вашей игре, то это будет видно на из странице.
 +
#* '''Невидимый(invisible)''' режим препятствует заходу со страницы хаба.
 +
# Нажмите зелёную кнопку '''GO'''. Процесс запуска может занять больше 10 минут. Если Dream Daemon перестанет отвечать, то просто ждите.
  
== Making your server visible on byond.com ==
+
== Открытие вашего сервера на byond.com ==
  
You '''DO NOT NEED''' to pay for membership to make your server visible on byond.com!
+
Вам '''НЕ НУЖНО''' платить за членство, чтобы ваш сервер увидели на byond.com!
  
To make your server show up, go to the /code/hub file. That file contains information on how to make your server visible. Be sure to edit that file '''BEFORE''' you compile. If this doesn't work, you may ask for help on our [irc://irc.rizon.net/tgstation13 IRC].
+
Чтобы его увидели, откройте /code/hub file. Этот файл содержит всю информацию о том, как сделать ваш сервер видимым. Убедитесь, что вы изменили этот файл '''ПЕРЕД ТЕМ''', как вы запустили компиляцию. Если у вас что-то не работает, вы всегда можете задать свой вопрос здесь [irc://irc.rizon.net/tgstation13 IRC].
  
== Setting up the database ==
+
== Настройка базы данных ==
  
Also see [[Working with the database]].
+
Можете посмотреть [[Working with the database]].
  
* Download and install XAMPP ([http://www.apachefriends.org/en/xampp-windows.html Windows], [http://www.apachefriends.org/en/xampp-linux.html Linux]). Make sure you have both apache and mysql selected when you install it.
+
* Скачайте и установите XAMPP ([http://www.apachefriends.org/en/xampp-windows.html Windows], [http://www.apachefriends.org/en/xampp-linux.html Linux]). Убедитесь, что вы поставили галочку на MYSQL и Apache при установке.
* Run XAMPP Control Panel (Open start menu, type 'xampp' in the search field and run it)  
+
* Запустите Панель управления XAMPP (Откройте стартовое меню, введите 'xampp' в поиске и запустите)  
* Click 'Start' next to Apache and MySQL in the control panel. (Apache often conflicts with skype, so make sure you have skype off: Right click it's icon in the tray and click quit. Hiding it is not enough.)
+
* Нажмите 'Start' рядом с Apache и MySQL в панели управления. (Зачастую, Apache конфликтует со скайпом, поэтому убедитесь выключен ли он: Правой кнопкой по иконке скайпа и отключите.)
* Go to the following address in your browser: [http://localhost/phpmyadmin http://localhost/phpmyadmin] (will only work once you start up both Apache and MySQL in the XAMPP Control Panel)
+
* Перейдите по этой ссылке: [http://localhost/phpmyadmin http://localhost/phpmyadmin] (Работает только тогда, когда вы включили Apache и MYSQL, нажав на 'Start')
* Click on the button titled SQL in the row of buttons at the top.
+
* Нажмите на кнопку 'SQL' в строке кнопок сверху.
* Open the file 'SQL/tgstation_schema.sql' in notepad and copy its content. You can also find it [https://github.com/tgstation/-tg-station/blob/master/SQL/tgstation_schema.sql here], but it may be newer than the version you are using.
+
* Откройте файл 'SQL/tgstation_schema.sql' блокнотом и скопируйте содержимое. Вы также можете найти этот файл ссылке: [https://github.com/tgstation/-tg-station/blob/master/SQL/tgstation_schema.sql here], но он может быть свежее, чем версия, которую вы используете.
* Paste the file's content into the input field for sql in phpmyadmin and hit 'Execute' in the bottom right
+
* Вставьте содержимое файла в поле ввода для sql в phpmyadmin и нажмите 'Execute' в правом нижнем углу.
* Once you execute this, a new database should be added to the list on the left, called 'feedback'. If not, refresh the page. If you click on the database, it should show you all the tables it includes. At this point, you have created the database 'infrastructure'. You now have to create a user for it.
+
* После нажатия кнопки execute, новая база данных должна быть добавлена в список 'feedback' слева. Если этого не произошло, обновите страницу. Нажав на базу данных, она откроет вам все таблицы, которые в ней есть. На данный момент, вы создали базу данных 'infrastructure'. Теперь вам нужно создать для неё пользователя.
* Click on 'SQL' in the top again, and execute the following statement: CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; GRANT ALL ON feedback.* TO 'myuser'@'%'; Replace both instances of myuser with some username and mypass with some password. Be careful to copy all the apostrophes. This will create a new user and grant him all privileges for the feedback database.
+
* Снова нажмите на 'SQL' сверху, и выполните следующую команду: CREATE USER 'Логин'@'localhost' IDENTIFIED BY 'Пароль'; GRANT ALL ON feedback.* TO 'Логин'@'%'; Замените оба 'Логина' и 'Пароль' на никнейм и любой пароль. Убедитесь, что вы скопировали все апострофы ('). Эта команда создаст нового пользователя и даст ему все привилегии для базы данных.
* Please keep phpmyadmin open for a while longer.
+
* Оставьте phpmyadmin открытым.
* Open the file: [https://github.com/tgstation/-tg-station/blob/master/config/dbconfig.txt config/dbconfig.txt] in notepad
+
* Откройте файл: [https://github.com/tgstation/-tg-station/blob/master/config/dbconfig.txt config/dbconfig.txt] блокнотом.
* Make sure to set it so that:
+
* Измените значения в файле:
** SQL_ENABLED does not have a # in front of it
+
** SQL_ENABLED не должен иметь символ # перед ним.
 
** ADDRESS localhost
 
** ADDRESS localhost
 
** PORT 3306
 
** PORT 3306
 
** FEEDBACK_DATABASE feedback
 
** FEEDBACK_DATABASE feedback
** FEEDBACK_LOGIN myuser (where myuser is the username you set in the CREATE USER statement)
+
** FEEDBACK_LOGIN myuser (Логин, который вы указали при создании нового пользователя)
** FEEDBACK_PASSWORD mypass (where mypass is the password you set in the CREATE USER statement)
+
** FEEDBACK_PASSWORD mypass (Пароль, который вы указали при создании нового пользователя)
* The database is now set up for death logging, population logging, polls ([[Working with the database#Adding a new poll|Tutorial]]), library, privacy poll, connection logging and player logging. There are two more features which you should consider. And it's best to do so now, since adopting them later can be a pain.
+
* Теперь база данных настроена на логи смертей, новых пользователей, голосования ([[Working with the database#Adding a new poll|Tutorial]]), библиотеки, приватные голосования, коннекты юзеров.
  
 
=== Database based banning ===
 
=== Database based banning ===
  
Offers temporary jobbans, admin bans, cross-server bans, keeps bans logged even after they've expired or were unbanned, and allows for the use of the off-server ban log.  
+
Предлагает временные джоббаны, админ баны, мульти-серверные баны, сохраняет их даже после снятия или окончания, и позволяет использовать логи банов.  
  
To enable database based banning:
+
Чтобы включить баны основанные на датабазе:
  
* Open config/config.txt
+
* Откройте config/config.txt
* Add a # in front of BAN_LEGACY_SYSTEM, so the line looks like "#BAN_LEGACY_SYSTEM"
+
* Добавьте # перед BAN_LEGACY_SYSTEM, что бы строка выглядела как "#BAN_LEGACY_SYSTEM"
* Done. Note that any legacy bans are no longer enforced once this is done! So it's a good idea to do it when you're starting up.
+
* Готово. Обратите внимание, что любые старые баны не действует с момента включения ! Так что лучше всего включить это сразу.
  
 
=== Database based administration ===
 
=== Database based administration ===
  
<font color='red'>'''DATABASE BASED ADMINISTRATION CURRENTLY DOES NOT WORK.'''</font>
+
<font color='red'>'''DATABASE BASED ADMINISTRATION СЕЙЧАС НЕ РАБОТАЕТ.'''</font>
  
The rest of this section remains for when it gets fixed.
+
Остальная часть этого раздела будет дополнена, когда функция будет исправлена.
  
<div class="toccolours mw-collapsible  mw-collapsed" style="width:600px">
+
Предлагает список изменений для фиксов, внесённых админом, что повышает подотчётность (добавление/удаление админов, добавление/удаление доступов, изменение рангов); позволяет админам с +PERMISSIONS редактировать доступы других админов в игре, поэтому им не нужен обязательный доступ к компьютеру, чтобы редактировать админов; Позволяет создавть кастомные ранги, с permissions not being tied to ranks, offering a better ability for the removal or addition of permissions to certain admins, if they need to be punished, or need extra permissions. Enabling this can be done any time, it's just a bit tedious the first time you do it, if you don't have direct access to the database.
Offers a changelog for changes done to admins, which increases accountability (adding/removing admins, adding/removing permissions, changing ranks); allows admins with +PERMISSIONS to edit other admins' permissions ingame, meaning they don't need remote desktop access to edit admins; Allows for custom ranks, with permissions not being tied to ranks, offering a better ability for the removal or addition of permissions to certain admins, if they need to be punished, or need extra permissions. Enabling this can be done any time, it's just a bit tedious the first time you do it, if you don't have direct access to the database.
 
  
 
To enable database based administration:
 
To enable database based administration:
  
* Open config/config.txt
+
* Откройте config/config.txt
* Add a # in front of ADMIN_LEGACY_SYSTEM, so the line looks like "#ADMIN_LEGACY_SYSTEM"
+
* Добавьте "#" перед ADMIN_LEGACY_SYSTEM, чтобы линия выглядела как "#ADMIN_LEGACY_SYSTEM"
* Do the steps described in [[Working with the database#Adding your first admin|Adding your first admin]].
+
* Выполните действия, описанные в [[Working with the database#Adding your first admin|Adding your first admin]].
* Done. Note that anyone in admins.txt lost admin status, including you! So do the step above! You can repeat it for everyone, as it's a lot easier to do that and just correct permissions with the ingame panel called 'permissions panel'.
+
* Готово. Обратите внимание на то, что все в admins.txt потеряли статус админа, даже вы! Так что выполните вышеперечисленный шаг! Вы можете повторить это для всех, Так как намного проще сделать это и подкорректировать полнмочия с помощью игровой панели, именуемой "permissions panel".
 
* If your database ever dies, your server will revert to the old admin system, so it is a good idea to have admins.txt and admin_ranks.txt set up with some admins too, just so the loss of the database doesn't completely destroy everything.
 
* If your database ever dies, your server will revert to the old admin system, so it is a good idea to have admins.txt and admin_ranks.txt set up with some admins too, just so the loss of the database doesn't completely destroy everything.
</div>
 
  
</div></div>
+
== "Я ничего не трогал, но всё перестало работать!" ==
  
<div class="toccolours mw-collapsible mw-collapsed" style="width:99%">
+
Вероятнее всего были повреждены файлы при загрузке.
 +
Чтобы исправить проблему, вам нужно:
  
'''Baystation12'''
+
*Скачать заново все файлы
<div class="mw-collapsible-content">
+
*Заменить файлы конфига вашими собственными
=Baystation12 Download, Compile, and Initial Setup=
+
*Скомпилировать сервер
# Install BYOND and create an account at  http://www.byond.com/ 
 
# Checkout the source using [http://git-scm.com/ Git] or download it directly from the [https://github.com/Baystation12/Baystation12/zipball/master ZIP button on Github] and extract it into a folder of your choosing.
 
# Open '''baystation12.dme'''.
 
# In the menu at the top, select Build > Compile.
 
#* Compile time depends on your computer specs. Expect to wait between 2-10 minutes. When it finishes you will see the following message:
 
#*; ''saving baystation12.dmb (DEBUG mode)''
 
#*; ''baystation12.dmb - 0 errors, 0 warnings''
 
#* If you see any errors or warnings, something has gone wrong - possibly a corrupt download or the files extracted wrong.
 
# Browse into the /config folder. In the sub-folder "example", there's an example set of config files; copy these into the main /config folder and edit them to taste. You'll want to edit '''config.txt''' to set the probabilities for different gamemodes in Secret and to set your server location so that all your players don't get disconnected at the end of each round.  It's recommended you don't turn on the gamemodes with probability 0, except Extended, as they have various issues and aren't currently being tested, so they may have unknown and bizarre bugs.  Extended is essentially no mode, and isn't in the Secret rotation by default.
 
# Open '''admins.txt''' and remove the default admins to add your own.  Some available levels (from highest to lowest) are: '''Game Master''', '''Game Admin''', '''Moderator'''. The '''Host''' level is the highest level and should let you use all available commands, and it's especially useful for creating a private server with which to test things.
 
#* The admins.txt format is:
 
#*; byondkey - Rank
 
#* ...where the BYOND key must be in lowercase and the admin rank must be properly capitalized.  Additional levels and specific commands accessible by each level can be seen in /code/modules/admin/admin_verbs.dm. (Check to be sure you've removed the # comment tag if you copy the format over from the example rank.)
 
  
=Starting the Server=
+
(Если вы используете TortoiseGit, то у вас не должно возникнуть таких проблем)
# To start the server, run the BYOND client, log in, and select File > "Start Dream Daemon..." from the menu.
 
# At the bottom of Dream Daemon, enter the path to your compiled baystation12.dmb file. 
 
# Set '''Port''' to the one you specified in the config.txt.
 
#* Note: If you are running it locally for testing, the port can be empty and one will be selected for you. However, choosing a port will prevent needing to edit your bookmark (below). A example testing port is 50000.
 
# '''Security:''' (Trusted is recommended. You can use Safe mode if you prefer, but you'll be clicking alert windows when the server needs to edit the info.json every time it boots up.)
 
#* '''Trusted''' mode allows the game to access files, run system commands, and perform other actions without asking for permission. This is usually not a good idea except for games that you have created yourself, and even then it is not advisable.
 
#* '''Safe''' mode is the default. File access is allowed within the same directory as the world's .dmb file, and any directories underneath that one. Most actions such as running a system command require your approval.
 
#* '''Ultrasafe''' mode means that nothing that could affect your system in any way will be allowed without your permission. For games that use save files, this is usually not desirable.
 
# '''Visibility:''' (Invisible is recommended)
 
#* '''Public''' mode is the default. The game will be seen by everyone on the [http://www.byond.com/games/Exadv1/SpaceStation13 hub].
 
#* '''Private''' mode means your friends on the pager will see your game. However if they are logged in, it will also be visible on their pager.
 
#* '''Invisible''' mode prevents the game from appearing on the hub or pager.
 
# Press the green '''GO''' button in the bottom-right. This step may take up to 10 minutes to complete as the world loads. If your Dream Daemon stops responding, simply wait longer.
 
  
=Logging In=
+
=Для билда Luna - MySQL=
# In the BYOND client's menu, select Bookmarks > Add...
 
# '''URL:''' 127.0.0.1:12345
 
#*...where '''12345''' is the port you chose in the section above. You may also use the External IP address and port (shown as '''xxx.x.x.xxx:xxxxx''') at the bottom of the Dream Daemon window after pressing "GO".
 
# '''Name:''' Test Server (or whatever you want to call it)
 
# Click '''OK'''
 
# Find your new '''Test Server''' bookmark in the Bookmarks menu and select it to start playing.
 
 
 
=Updating=
 
# Download a new .ZIP from the Baystation 12 Github site (as explained in the first section above).
 
# Backup your /config and /data folders. These store your server configuration, player preferences and ban list.
 
# Extract the new files (preferably into a clean directory, but replacing existing files should work fine).
 
# Copy your /config and /data folders back into the new install, overwriting when prompted except if we've specified otherwise
 
# Re-compile the game.
 
 
 
=MySQL Setup=
 
 
The SQL backend for the library and stats tracking requires a MySQL server.  Your server details go in '''/config/dbconfig.txt''', and the SQL schema is in '''/SQL/tgstation_schema.sql'''.  More detailed setup instructions are coming soon, for now ask in our IRC channel.
 
The SQL backend for the library and stats tracking requires a MySQL server.  Your server details go in '''/config/dbconfig.txt''', and the SQL schema is in '''/SQL/tgstation_schema.sql'''.  More detailed setup instructions are coming soon, for now ask in our IRC channel.
</div></div>
 
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:99%">
 
'''Luna'''
 
<div class="mw-collapsible-content">
 
=Luna=
 
 
1. Скачиваем сборку - https://github.com/SS13/luna/tree/e13cf12d2e591d01db76c5cf6fa28412376d11d2<br>
 
1. Скачиваем сборку - https://github.com/SS13/luna/tree/e13cf12d2e591d01db76c5cf6fa28412376d11d2<br>
 
2. Распаковываем в любую подходящую папку.<br>
 
2. Распаковываем в любую подходящую папку.<br>
Строка 178: Строка 131:
 
  DB_PORT 3306
 
  DB_PORT 3306
 
12. Компилим Луну и, помолясь, запускаем ее. ОНА НЕ УПАЛА! ОНА ЖИВАЯ! ЖИВАЯ! АХАХАХА!
 
12. Компилим Луну и, помолясь, запускаем ее. ОНА НЕ УПАЛА! ОНА ЖИВАЯ! ЖИВАЯ! АХАХАХА!
</div></div>
+
 
 
[[Category:Guides]]
 
[[Category:Guides]]

Текущая версия от 19:16, 2 октября 2024

В разработке…


Jobeng.png
Данная статья помечена как неоконченная. Это означает, что статья находится на доработке, поэтому является неверной или неактуальной.

Вы можете помочь проекту Onyxyeye@256x256.png Onyx и сообществу Animus-logo.png SS13 в целом — зайдите на наш Bus Mainframes.gif Портал сообщества.


Эта страница содержит информацию о том, как скачать, настроить и запустить свой собственный локальный сервер, также иногда называемый "локалкой". Полезно для тестирования возможностей в игре без риска нанесения вреда другим игрокам.

Загрузка

Мы используем GitHub в качестве репозитория для нашего проекта. На нём можно просматривать все файлы билда и при необходимости скачивать отдельные его части или даже индивидуальные файлы. Но для запуска локального сервера потребуется скачать весь билд.

Различные билды игры:

Baystation12. Загрузка. Настройка. Запуск.

  1. Установите BYOND и создайте аккаунт на сайте http://www.byond.com/
  2. Откройте файл baystation12.dme.
  3. В самом верху, в меню, нажмите Build > Compile.
    • Время компиляции зависит от характеристик вашего ПК. Примерное время ожидания колеблется от 2х до 10ти минут. Как только компил завершится, вы увидите сообщение:
      saving baystation12.dmb (DEBUG mode)
      baystation12.dmb - 0 errors, 0 warnings
    • Если вы видите какие-то ошибки или предупреждения, значит что-то явно пошло не так, скорее всего код был скачан не полностью или с ошибками.
  4. Зайдите в папку "config" . В ней вы увидите под-папку "example", в ней находятся примеры всех конфиг-файлов; скопируйте их все в папку "config" и смело редактируйте на ваш вкус. Вам необходимо изменить файл config.txt чтобы установить шанс выпадения того или иного игрового режима в режиме Secret. Так же в этом файле вы сможете настроить свой сервер, например, чтобы игрокам не приходилось перезаходить после рестарта в конце раунда . Рекомендуется не ставить шанс выпадения игрового режима на 0, за исключением режима Extedent, т.к. никто еще не пробовал совмещать несколько режимов в один, это может привести к серьезным ошибкам. Extended это такой игровой режим, при котором нет ничего. Просто обычный раунд без каких-либо событий или спец.ролей, поэтому ему и не добавили шанс выпадения при режиме Secret.
  5. Откройте файл admins.txt и удалите стандартных администраторов, добавив свой ник вместо них. Приведем несколько доступных рангов(с самого высокого до самого низкого): Game Master, Game Admin, Moderator. Ранг Host является самым высоким и позволяет использовать все доступные команды. Этот ранг особенно полезен в том случае, если вы создаете свой приватный сервер для тестирования чего-нибудь.
    • Содержание файла admins.txt должно быть таким:
      byondkey - Rank
    • ...where the BYOND key must be in lowercase and the admin rank must be properly capitalized. Additional levels and specific commands accessible by each level can be seen in /code/modules/admin/admin_verbs.dm. (Check to be sure you've removed the # comment tag if you copy the format over from the example rank.)

Запуск сервера

  1. Для начала вам необходимо запустить BYOND, авторизоваться в нем, а затем нажать "Start Dream Daemon..." в меню.
  2. В низу вы увидите поле, в котором нужно указать путь до файла baystation12.dmb.
  3. Выставите в поле Port то значение, которое вы указали в файле config.txt.
    • На заметку: Если вы запускаете сервер просто для локального теста, порт можно оставить пустым, порт будет выбран случайно. Однако, если вы выставите свой порт, он будет сохранен и при каждом новом запуске вам не придется выставлять его заного. К примеру, вы можете выставить порт 50000.
  4. Безопасность: (Рекомендуется использовать режим Trusted. Вы можете использовать и режим Safe, если хотите, но вам придется каждый раз нажимать на предупреждающее окошко, когда будет загружаться файл info.json)
    • Доверенный (trusted) режим, дающий право игре на доступ к файлам, выполнению системных команд и тому подобным вещам, не требуя при этом вашего разрешения. Это не самая лучшая идея в случае когда вы делаете игру не только для себя, особенно если вы не имеете возможности проследить за ней.
    • Надёжный (safe) режим, ставится по умолчанию. Игра имеет доступ только к файлам в папке, в которой находится .dmb файл билда, а также к файлам во всех подпапках. Большинство действий, таких как выполнение системных команд, требуют вашего подтверждения.
    • Сверхнадёжный (ultrasafe) режим, подразумевающий что ни одно действие влияющее на систему, выполнено без вашего согласия не будет. Этот режим предназначен для полного сохранения игровых файлов, но из-за неудобности используется редко.
  5. Видимость: (Invisible рекомендован)
    • Открытый(public) режим, ставится по умолчанию. Ваша игра будет видна всем на hub.
    • Ограниченный(private) режим позволяет вашим друзьям присоединиться к вашей игре. Также, если они подключатся к вашей игре, то это будет видно на из странице.
    • Невидимый(invisible) режим препятствует заходу со страницы хаба.
  6. Нажмите зелёную кнопку GO. Процесс запуска может занять больше 10 минут. Если Dream Daemon перестанет отвечать, то просто ждите.

Открытие вашего сервера на byond.com

Вам НЕ НУЖНО платить за членство, чтобы ваш сервер увидели на byond.com!

Чтобы его увидели, откройте /code/hub file. Этот файл содержит всю информацию о том, как сделать ваш сервер видимым. Убедитесь, что вы изменили этот файл ПЕРЕД ТЕМ, как вы запустили компиляцию. Если у вас что-то не работает, вы всегда можете задать свой вопрос здесь IRC.

Настройка базы данных

Можете посмотреть Working with the database.

  • Скачайте и установите XAMPP (Windows, Linux). Убедитесь, что вы поставили галочку на MYSQL и Apache при установке.
  • Запустите Панель управления XAMPP (Откройте стартовое меню, введите 'xampp' в поиске и запустите)
  • Нажмите 'Start' рядом с Apache и MySQL в панели управления. (Зачастую, Apache конфликтует со скайпом, поэтому убедитесь выключен ли он: Правой кнопкой по иконке скайпа и отключите.)
  • Перейдите по этой ссылке: http://localhost/phpmyadmin (Работает только тогда, когда вы включили Apache и MYSQL, нажав на 'Start')
  • Нажмите на кнопку 'SQL' в строке кнопок сверху.
  • Откройте файл 'SQL/tgstation_schema.sql' блокнотом и скопируйте содержимое. Вы также можете найти этот файл ссылке: here, но он может быть свежее, чем версия, которую вы используете.
  • Вставьте содержимое файла в поле ввода для sql в phpmyadmin и нажмите 'Execute' в правом нижнем углу.
  • После нажатия кнопки execute, новая база данных должна быть добавлена в список 'feedback' слева. Если этого не произошло, обновите страницу. Нажав на базу данных, она откроет вам все таблицы, которые в ней есть. На данный момент, вы создали базу данных 'infrastructure'. Теперь вам нужно создать для неё пользователя.
  • Снова нажмите на 'SQL' сверху, и выполните следующую команду: CREATE USER 'Логин'@'localhost' IDENTIFIED BY 'Пароль'; GRANT ALL ON feedback.* TO 'Логин'@'%'; Замените оба 'Логина' и 'Пароль' на никнейм и любой пароль. Убедитесь, что вы скопировали все апострофы ('). Эта команда создаст нового пользователя и даст ему все привилегии для базы данных.
  • Оставьте phpmyadmin открытым.
  • Откройте файл: config/dbconfig.txt блокнотом.
  • Измените значения в файле:
    • SQL_ENABLED не должен иметь символ # перед ним.
    • ADDRESS localhost
    • PORT 3306
    • FEEDBACK_DATABASE feedback
    • FEEDBACK_LOGIN myuser (Логин, который вы указали при создании нового пользователя)
    • FEEDBACK_PASSWORD mypass (Пароль, который вы указали при создании нового пользователя)
  • Теперь база данных настроена на логи смертей, новых пользователей, голосования (Tutorial), библиотеки, приватные голосования, коннекты юзеров.

Database based banning

Предлагает временные джоббаны, админ баны, мульти-серверные баны, сохраняет их даже после снятия или окончания, и позволяет использовать логи банов.

Чтобы включить баны основанные на датабазе:

  • Откройте config/config.txt
  • Добавьте # перед BAN_LEGACY_SYSTEM, что бы строка выглядела как "#BAN_LEGACY_SYSTEM"
  • Готово. Обратите внимание, что любые старые баны не действует с момента включения ! Так что лучше всего включить это сразу.

Database based administration

DATABASE BASED ADMINISTRATION СЕЙЧАС НЕ РАБОТАЕТ.

Остальная часть этого раздела будет дополнена, когда функция будет исправлена.

Предлагает список изменений для фиксов, внесённых админом, что повышает подотчётность (добавление/удаление админов, добавление/удаление доступов, изменение рангов); позволяет админам с +PERMISSIONS редактировать доступы других админов в игре, поэтому им не нужен обязательный доступ к компьютеру, чтобы редактировать админов; Позволяет создавть кастомные ранги, с permissions not being tied to ranks, offering a better ability for the removal or addition of permissions to certain admins, if they need to be punished, or need extra permissions. Enabling this can be done any time, it's just a bit tedious the first time you do it, if you don't have direct access to the database.

To enable database based administration:

  • Откройте config/config.txt
  • Добавьте "#" перед ADMIN_LEGACY_SYSTEM, чтобы линия выглядела как "#ADMIN_LEGACY_SYSTEM"
  • Выполните действия, описанные в Adding your first admin.
  • Готово. Обратите внимание на то, что все в admins.txt потеряли статус админа, даже вы! Так что выполните вышеперечисленный шаг! Вы можете повторить это для всех, Так как намного проще сделать это и подкорректировать полнмочия с помощью игровой панели, именуемой "permissions panel".
  • If your database ever dies, your server will revert to the old admin system, so it is a good idea to have admins.txt and admin_ranks.txt set up with some admins too, just so the loss of the database doesn't completely destroy everything.

"Я ничего не трогал, но всё перестало работать!"

Вероятнее всего были повреждены файлы при загрузке. Чтобы исправить проблему, вам нужно:

  • Скачать заново все файлы
  • Заменить файлы конфига вашими собственными
  • Скомпилировать сервер

(Если вы используете TortoiseGit, то у вас не должно возникнуть таких проблем)

Для билда Luna - MySQL

The SQL backend for the library and stats tracking requires a MySQL server. Your server details go in /config/dbconfig.txt, and the SQL schema is in /SQL/tgstation_schema.sql. More detailed setup instructions are coming soon, for now ask in our IRC channel. 1. Скачиваем сборку - https://github.com/SS13/luna/tree/e13cf12d2e591d01db76c5cf6fa28412376d11d2
2. Распаковываем в любую подходящую папку.
3. Качаем набор с сайта http://www.denwer.ru/
4. Распаковываем архив, устанавливаем и запускаем denwer. Для denwer сойдут стандартные настройки установки.
5. Открываем в браузере http://localhost/Tools/phpMyAdmin/
5.1 (Пропустить если открылось нормально) Гуглим освобождение 80 порта в винде 7. Обычно нужно прибить службу W3SVC в диспетчере задач.
Перезапускаем denwer. Откроется phpMyAdmin - переходим к пункту 4 .
6. Базы данных - создать базу данных luna .
7. Нажимаем на luna в списке, переходим на вкладку SQL.
8. Копипастим туда содержимое database.sql и удаляем первую строчку. Жмем ОК.
9. Вкладка Структура, таблица admins, действие Вставить.
10. В поле ckey бьендник главного админа прописными буквами, в rank число 6. Жмем ОК.
11. В папке config в файле db_config.txt прописываем такие значения:

DB_SERVER 127.0.0.1
DB_USER root
DB_PASSWORD
DB_DBNAME luna
DB_PORT 3306

12. Компилим Луну и, помолясь, запускаем ее. ОНА НЕ УПАЛА! ОНА ЖИВАЯ! ЖИВАЯ! АХАХАХА!