.github | ||
.gitlab/issue_templates | ||
docker | ||
garrysmod | ||
octolib | ||
.gitignore | ||
.gitlab-ci.yml | ||
config.ci.ts | ||
config.example.ts | ||
docker-compose.yml | ||
gameserver-entrypoint.sh | ||
howto.md | ||
README.md | ||
server.cfg | ||
server.ci.cfg |
Сочные сливы Доброград 13.06.2022 (repack by chelog) сенсация 2023
Поскольку за последнее время я устал от разного рода сообщений в ЛС по поводу слитой сборки сервера, я решил залить ее самостоятельно. И так известно, что ресурсам на сайтах и в Telegram-каналах со сливами не стоит доверять, так как легко словить какой-нибудь бэкдур или вирус, поэтому вот вам чистая сборка ровно той же версии
Пользуйтесь на здоровье и развивайтесь, я буду очень рад, если это кому-то поможет научиться разработке, как на наших успехах, так и ошибках. Этот код никак не зарегистрирован юридически и скорей всего я никого не смогу остановить, но хочу чисто по-человечески попросить вас не использовать целые системы, аддоны или сборку в коммерческих целях
Честно говоря, я сам в шоке, насколько сильно изменилась структура и статус проекта всего за один год (к примеру, у нас уже нет TS в проекте, октолиба и развертка очень повзрослели и многое другое), но выкладывать самую новую версию по понятным причинам не буду :^) Этот проект был почти самым первым, что я начал делать в Garry's Mod, и понятное дело, здесь есть код из далекого 2017, баги и недоработки, которые на сегодняшный день мы уже исправили (а может и нет), но это было очень крутое путешествие и старт моей карьеры в геймдеве! В любом случае я буду очень благодарен вашим сообщениям о любых находках, в идеале открывайте MR или issue
— Dmitry Antonov aka chelog
Далее следует оригинальный, старый Readme:
-> Справка по разработке <-
Установка
# если работаем под Windows, все запускаем внутри WSL
# скопируем репозиторий к себе на устройство
git clone --recurse-submodules https://gitlab.octo.gg/public-projects/dobrograd-13-06-2022 dobrograd
cd dobrograd
# скопируем и настроим конфиг сервера
cp config.example.ts config.ts
# исправим разрешения у папок, иначе контейнеры не будут иметь доступа
# если команда setfacl не найдена, надо установить "acl" через apt
chmod 777 $(find . -type d)
setfacl -dm u::rwx,g::rwx,o::rwx $(find . -type d)
Работа
В скриптах проект называется "gmod" для того, чтобы сервер использовал общий кэш загрузки аддонов, таким образом несколько серверов переиспользуют скачанный контент, чтобы не использовать лишнее место на диске
# все скрипты выполняются в WSL в корневой папке проекта
# запустить проект и все связанные с ним сервисы
docker compose -p gmod up
# прикрепить терминал к консоли сервера, чтобы в него можно было слать команды
docker attach dbg_game
# остановить контейнеры
docker compose -p gmod stop
# остановить и удалить контейнеры (для обновления конфигов, данные при этом останутся)
docker compose -p gmod down
# полный сброс кэша docker если что-то сломалось, перед этим надо прописать скрипт с down
docker system prune -a
Подключиться к серверу можно по адресу, полученному из wsl hostname -I
, или же можно поставить wsl2host
, про который говорится в настройке окружения
Для некоторых скриптов есть поддержка прямо в расширении VS Code, но сначала надо хотя бы раз вручную запустить up
-скрипт через терминал: