Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
123new

Создаем свой серверный мод. [DayZ 1.4 to Discontined]

Рекомендованные сообщения

dosserua Почему то не работает(

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах



а как подключаешь? -servermod=@My_Server_Mod ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

BorizzK да+ поменял название на constants_modded.c не заработало

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Разобрался, всем спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

spiritofkill и что было?

имя файла

так просто удобней

 

а у тебя скорее ошибка была в конфиге - верно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

BorizzK я уверен что именно там была у него ошибка, я же нормально спаковал и работает на сервере

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@dosseruaБез отключения проверки сигнатур и всяких колдунств с клиентской стороны?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

fortnox2012 да, просто подключаешь его как -serverMod=@mod

И не нужно выключать проверки, и не нужно со стороны клиента ни чего ставить. У меня сделан серверный мод с этим скриптом под дезматч и ванильный сервер.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброго времени суток!

Отключил крафт самодельной удочки вот таким грубым макаром:

modded class CraftFishingRod extends RecipeBase
{
    override bool CanDo()
    {
            return false;
    }
}

Подскажите пож, как мне добавить сообщение игроку пытающемуся крафтить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
14.01.2020 в 13:10, useruser сказал:

Доброго времени суток!

Отключил крафт самодельной удочки вот таким грубым макаром:

modded class CraftFishingRod extends RecipeBase
{
    override bool CanDo()
    {
            return false;
    }
}

Подскажите пож, как мне добавить сообщение игроку пытающемуся крафтить?

Ну по идее перед return false надо еще отправку сообщения сделать. Только чтобы отправить надо значть идентификатор игрока из того места того скрипта. Если это возможно (скорее всего), то отправка дело лишь пары строк.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добрый день всем!

Может кто знает как на сервере, в скрипте мода, дернуть значение серверного FPS?

Метод GetFPS() в Game.c возвращает (насколько я понял) данные по FPS при работе с клиентской частью, т.к. в серверной он возвращает стабильно 0.07 FPS...

Изменено пользователем pr0gy (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
14.07.2019 в 11:52, 123new сказал:

сделать то вы можете все что угодно, но кроме объектов, стоящих в точке и ботов с бессмертием для них у вас ничего не будет тогда, т.е. ни менюшек торговли, ни уведомлений о входах в зоны, ничего.

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

обьясни дураку, где проблема ? пишет 'can`t compile game script module'

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, Conflict64rus сказал:

обьясни дураку, где проблема ? пишет 'can`t compile game script module'

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

скриншот ошибки можно? а то я не дома даже)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
46 минут назад, 123new сказал:

скриншот ошибки можно? а то я не дома даже)

 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
21 минуту назад, Conflict64rus сказал:

 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

кхм...

597216220_.png.c862f231a30311d4bda848f3d810fe50.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
34 минуты назад, 123new сказал:

кхм...

597216220_.png.c862f231a30311d4bda848f3d810fe50.png

и правда.какого она тут делает?☺ Спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Господа подскажите что делаю не так

 

 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

и конфиг:

class CfgPatches    // требуется обязательно
{
    class My_Server_Mod    // требуется обязательно, совпадает с именем мода
    {
        units[]={};                 // may be not worked
        weapons[]={};                 // may be not worked
        requiredVersion=0.1;         // may be not worked
        requiredAddons[]={};
        /*
            requiredAddons[]=
            {
                "DZ_Data",        // Перечисляем требуемые и используемые модом аддоны (pbo-файлы игры и модов по их внутренним скриптовым именам)
            };
        */
    };
};
class CfgMods // // требуется обязательно, совпадает с именем мода
{
    // https://community.bistudio.com/wiki/DayZ:Modding_Structure#Mod_presentation
    class My_Server_Mod
    {
        dir = "My_Server_Mod";                            // Имя папки мода, совпадает с именем мода
        picture = "";                                     // Картинка в описании мода
        action = "";                                      // Ссылка, например вот так: action = "https://dayz.com/";    
        hideName = 1;                                    // Не уверен, что этот параметр работает
        hidePicture = 1;                                // Не уверен, что этот параметр работает
        name = "My_Server_Mod";                          // Имя мода (а также его внутреннее скриптовое имя)
        logoSmall = "Mods/TestMod/modlogosmall.tga";    // значок рядом с именем мода, если описание не развернуто
        logo = "Mods/TestMod/modlogo.tga";                // логотип под меню игры
        logoOver = "Mods/TestMod/modlogohover.tga";        // при наведении курсора мыши на логотип
        tooltip = "tooltip";                            // подсказка при наведении курсора мыши
        overview = "My Server Mod";                     // Описание
        credits = "123new";                                // credits
        author = "123new";                                // author
        authorID = "0";                                  // author steam ID 
        version = "1.0";                                  // version
        extra = 0;                                        // Не уверен, что этот параметр работает
        
        type = "mod";                                     // требуется обязательно, остается неизменным
        // inputs = "mods\testmod\inputs\my_new_inputs.xml";          // необязательно, при использовании пользовательских inputs
        dependencies[]={"Core","GameLib","Game","World","Mission"};                              // необязательно, если необходимо установить зависимость класса

        class defs
        {            
            class engineScriptModule
            {
                value=""; // если значение пустое, используется функция ввода по умолчанию
                files[]={"My_Server_Mod/scripts/1_Core"}; // вы можете добавить любое количество файлов или каталогов, и они будут скомпилированы вместе с оригинальными скриптами игрового модуля
            };
            class gameLibScriptModule
            {
                value="";
                files[]={"My_Server_Mod/scripts/2_GameLib"};
            };
            class gameScriptModule
            {
                //value="CreateGameMod"; // когда значение заполнено, имя функции ввода модуля скрипта по умолчанию перезаписывается им
                value = "";
                files[]={"My_Server_Mod/3_Game/PlayerConstants.c"};
            };
            class worldScriptModule
            {
                value="";
                files[]={"My_Server_Mod/scripts/4_World"};
            };
            class missionScriptModule
            {
                value="";
                files[]={"My_Server_Mod/scripts/5_Mission"};
            };
        };
        // Если какой-то из разделов скриптинга вам не нужен и вы не сибираетесь его паковать, сотрите необходимый блок с ним выше и в массиве dependencies 
    };
};

 

Изменено пользователем 123new
вставка кода в обязательный тег (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
13 минут назад, Ewgen сказал:

Господа подскажите что делаю не так

 

 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

с чем подсказывать то? конфиг выше - копипаст с шапки темы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

там как я понял все го лишь свой файлик прописать нужно было какой изменить, а скриншот тут черный но кликабельный

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Ewgen сказал:

там как я понял все го лишь свой файлик прописать нужно было какой изменить, а скриншот тут черный но кликабельный

 

да, верно, всего лишь 1 файлик. он у вас в ролдном коде в 3_Game секции лежит, туда же соответственно и размещать.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ни в какую не получается, создал

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
10 минут назад, Ewgen сказал:

Ни в какую не получается, создал

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

ругается то как? Скрин хоть бы...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В конфиге у меня личнообычно
            class missionScriptModule
            {
                value = "";
                files[] = {"блабла/scripts/3_Game"};
            }

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: 123new
      Здравствуйте, дорогие друзья и посетители сайта. В данной теме я распишу как создать свой "чистый" сервер на основе первых официальных серверных файлов игры, доступных каждому в steam для тех, кто приобрел эту замечательную игру. Для тех, кто не приобретал ее, не расстраивайтесь, добавлю зеркала на файлы.
      И так, приступим.
       
      Системные требования игры:
      https://s-platoon.ru/topic/7014-polnaya-dokumentaciya-servernyh-faylov-dayz-standalone-dayz-server-files-documentation/?do=findComment&comment=61219
       
      Нам понадобятся:
      1. Notepad++ https://notepad-plus-plus.org/download
      2. Официальные серверные файлы игры со steam. Скачать  их можно:
      В Steam из раздела 'инструменты' , выбрав DayZ Server и нажав 'установить' Вручную через утилиту SteamCMD:
      3. Официальный клиент игры из steam: https://store.steampowered.com/app/221100/DayZ/
      4. "Настроенная конфигурация серверной части игры" и батник для старта сервера:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      И так, приступим.
      Копируем папку со скачанными серверными файлами игры (папку DayZServer ) в отдельную папку. В пути и имени папки не должно быть пробелов и русских символов. Саму новую папку можно назвать как хотите, я же назову ее MyServer. Распаковываем архив с "Настроенной конфигурацией серверной части игры" в папку с серверными файлами (папка MyServer). Получим что-то типа такого: Далее мы работаем уже только внутри папки MyServer Открываем в Notepad++ файл server.cfg в папке Instance_1.  Настраиваем его, комментарии к настройке на русском в файле имеются.
      При особой необходимости вы можете свериться с serverDZ.cfg в корневой папке сервера, это оригинальный файл конфигурации, предоставленный разработчиками. Также, можете прочитать информацию из официальной документации с переводом в теме вот этой(смотрите во 2 сообщении указанной темы). Плюсом есть пояснения в конце гайда! Открываем в Notepad++ файлы BEServer.cfg  и BEServer_x64.cfg в папке Instance_1\Battleye в папке сервера. Настраиваем параметры, содержимое обоих файлов должно быть идентичным.
      Параметры:
      RConPassword - Устанавливает пароль для подключения RCon инструментов  (инструмент удаленного администрирования, таких как BEC/Dart).
      RestrictRCon - Включает\отключает RCon-функции (кик\бан\ограничение подключения) (0 для отключения органичений)
      MaxPing - устанавливает ограничение на сервере по пингу
      В примере, уже имеющемся у вас, 12345678 - rcon-пароль сервера, 500 - максимальный пинг, разрешенный battleye для игры на сервере, RestrictRCon 0 - разрешить подключение с RCon-клиентов с правами кика и бана (0 - разрешено все, 1 - запрещен кик и бан, только отправка в чат). Запускаем !!!Start_server.bat и наш сервер запустится. Запускаем клиент игры со steam, находим наш сервер вручную по ip и порту, либо имени сервера.
      Если сервер запущен на том же компьютере, где и игра, и на стандартном порту 2302, то поумолчанию поиск выполняется по 127.0.0.1:2302
      Если сервер запущен на другом компьютере, то вместо 127.0.0.1 будет ip адрес компьютера, где запущен сервер, или его доменное имя. Например, myserver.com:2302 или 178.123.22.12:2302
      ВАЖНО: если сервер запущен на другом компьютере, отличном от компьютера где запущена игра, то для доступа на сервер игроков необходимо иметь "внешний" выделенный ip-адрес и открытый порт сервера!
      Сменить порт сервера можно в !!!Start_server.bat (Notepad++ для редактирования),  параметр запуска сервера -port= Более подробно по параметрам запуска читайте ниже. Для выключения сервера рекоммендуется пользоваться !!!Server_kill.bat файлом, созданным в соответствии с рекоммендациями разработчиков игры и официальной документацией.  
      Разъяснения по параметрам запуска сервера игры (для !!!Start_server.bat ):
      Разъяснения по конфигурационному файлу сервера игры (для serverDZ.cfg ):
       
      Crack SmartSteamEmu v. 1.4.3 данной версии клиента игры и сервера:
      Скачать с Zippyshare.com: https://www64.zippyshare.com/v/mHmPweqg/file.html
      Скачать с Mega.nz: https://mega.nz/#!rnZBXK4b!KRrJm6obcJjUlzMpEPNQ3R8sy2z0pP-0Myb_ao4TVhg
      Скачать с yandex.disk: https://yadi.sk/d/4xSF1dSt6XN41g
      Инструкция по установке есть в архиве, дублирую:
       
      Дополнительно:
      Для работы с Battleye, кика и бана игроков используйте ip-адрес и порт сервера, и любой rcon-клиент с паролем из BEServer_x64.cfg
      Для работы BEC файл BEServer.cfg должен быть идентичным по содержанию BEServer_x64.cfg иначе программа не будет работать!
      База данных (storage) теперь хранится по пути: mpmissions\dayzOffline.chernarusplus\storage_{номер instance с cfg сервера}
      В базе данных также хранится файл с сохранениями игроков на сервере с именем players.db
      Если вы не находите свой сервер в списке серверов игры во вкладке Community, проверьте на доступность и открытость извне игровой порт, а также порты steam и steamquery (см. cfg файл сервера). Сервера с crack не отобразятся там.
       
      Вот и все, приятной игры на сервере!
       
       
    • Автор: 123new
      В данной теме я распишу мой вариант установки сейвзоны, работающий на момент публикации статьи на версии сервера игры 1.06.152885.
       
      Установка
      1. Открываем 'init.c' в  'MpMissions' вашей.
      2. Вверху файла добавляем 1 строкой:
      #include "$CurrentDir:\\mpmissions\\dayzoffline.chernarusplus\\Scripts\safezone.c" Где 'dayzoffline.chernarusplus' - имя папки с активной 'MpMissions' вашей.
      Т.е. для карты Livonia 'dayzoffline.chernarusplus'  надо вручную заменить на 'dayzOffline.enoch'
      Пример:

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      3.Создаем папку 'Scripts' в корне 'MpMissions' вашей, а в ней создаем файл с именем 'safezone.c' следующего содержания:
      /* Author: Sania(ZoS) (aka 123new) Project: S-platoon.ru Install: 1. Create a 'Scripts' directory in your active mpmissions 2. Plase this filename (safezone.c) in 'Scripts' 3. Add in init.c this line: #include "$CurrentDir:\\mpmissions\\dayzoffline.chernarusplus\\Scripts\safezone.c" Where is 'dayzoffline.chernarusplus' is active mpmission directory in cfg filename server 4. Configure a next settings */ class SafeZone_PlugIn { protected bool Activate_SafeZone_PlugIn = true; // safezone on (true) or off (false) protected float SAFEZONE_time_repeat_checking = 10; //In seconds ref static TStringArray SAFEZONE_LOACTIONS = {"15145.1 32.9793 13919.0", "12145.1 32.9793 10919.0"};//Map coords (positions of the safe zone) protected static float SAFEZONE_RADIUS = 100; //In meter protected static string SAFEZONE_ENTRY_MESSAGE = "Welcome to The SafeZone! Godmode ENABLED!"; protected static string SAFEZONE_EXIT_MESSAGE = "You Have Left The SafeZone! Godmode DISABLED!"; void OnInit() { if(Activate_SafeZone_PlugIn) { GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(RunCheckStart, (SAFEZONE_time_repeat_checking * 1000), true); } } static void RunCheckStart() { private array<Man> players = new array<Man>; GetGame().GetPlayers( players ); if (SAFEZONE_LOACTIONS.Count() > 0) { if (players.Count() > 0) { foreach(string SAFEZONE_LOACTION: SAFEZONE_LOACTIONS) { if( players.Count() > 0 ) { foreach(Man player: players) { if(player) { private PlayerBase player_casted = PlayerBase.Cast(player); CheckingPosition(player_casted,SAFEZONE_LOACTION.ToVector()); } } } } } } } static void CheckingPosition(PlayerBase player,vector SAFEZONE_LOACTION) { private float SAFEZONE_distance; private string SAFEZONE_ZoneCheck, SAFEZONE_UID_PLAYER, SAFEZONE_NAME_PLAYER; SAFEZONE_NAME_PLAYER = player.GetIdentity().GetName(); SAFEZONE_UID_PLAYER = player.GetIdentity().GetPlainId(); //Steam 64 private vector SAFEZONE_pos_player = player.GetPosition(); private vector SAFEZONE_LOCATION_FIXED = CorrectToGroundPosY(SAFEZONE_LOACTION); private string name_mesage_profile = "GodModeEnabledFor: " + SAFEZONE_UID_PLAYER + " Location: " + SAFEZONE_LOACTION.ToString(); SAFEZONE_distance = vector.Distance(SAFEZONE_pos_player,SAFEZONE_LOCATION_FIXED); if (SAFEZONE_distance <= SAFEZONE_RADIUS) //Player Inside Zone { SAFEZONE_ZoneCheck = ""; GetGame().GetProfileString(name_mesage_profile,SAFEZONE_ZoneCheck); if (SAFEZONE_ZoneCheck == "true") //Already in zone { GetGame().SetProfileString(name_mesage_profile,"true"); player.SetAllowDamage(false); //GodMode On return; } else { GetGame().SetProfileString(name_mesage_profile,"true"); Print("[SafeZone] " + SAFEZONE_NAME_PLAYER + " (" + SAFEZONE_UID_PLAYER + ") Enter in safeZone in position: " + SAFEZONE_LOCATION_FIXED.ToString()); player.SetAllowDamage(false); //GodMode On SendPersonalMessage(SAFEZONE_ENTRY_MESSAGE, player); } } else { //Player Outside of Zone if (SAFEZONE_distance > SAFEZONE_RADIUS) //Player Outside of Zone { SAFEZONE_ZoneCheck = ""; GetGame().GetProfileString(name_mesage_profile,SAFEZONE_ZoneCheck); if (SAFEZONE_ZoneCheck == "false") { GetGame().SetProfileString(name_mesage_profile,"false"); return; } else { if (SAFEZONE_ZoneCheck != "") { GetGame().SetProfileString(name_mesage_profile,"false"); Print("[SafeZone] " + SAFEZONE_NAME_PLAYER + " (" + SAFEZONE_UID_PLAYER + ") Left safeZone in position: " + SAFEZONE_LOCATION_FIXED.ToString()); player.SetAllowDamage(true); //GodMode Off SendPersonalMessage(SAFEZONE_EXIT_MESSAGE, player); } else { GetGame().SetProfileString(name_mesage_profile,"false"); return; } } } } } static vector CorrectToGroundPosY(vector pos) { private float pos_x = pos[0]; private float pos_z = pos[2]; private float pos_y = GetGame().SurfaceY(pos_x, pos_z); private vector tmp_pos = Vector(pos_x, pos_y, pos_z); return tmp_pos; } static void SendPersonalMessage(string message, PlayerBase casted_player) { Man player; Class.CastTo(player, casted_player); if(( player ) && (message != "")) { Param1<string> m_GlobalMessage = new Param1<string>(message); GetGame().RPCSingleParam(player, ERPCs.RPC_USER_ACTION_MESSAGE, m_GlobalMessage, true, player.GetIdentity()); } } } /* class SafeZone_Config //test config for json { vector SAFEZONE_LOACTION = "15145.1 32.9793 13919.0"; //Map coords (position of the safe zone) float SAFEZONE_RADIUS = 100.0; //In meter string SAFEZONE_ENTRY_MESSAGE = "Welcome to The SafeZone! Godmode ENABLED!"; string SAFEZONE_EXIT_MESSAGE = "You Have Left The SafeZone! Godmode DISABLED!";\ } */ ref SafeZone_PlugIn SafeZone = new SafeZone_PlugIn(); modded class CustomMission { override void OnInit () { super.OnInit(); SafeZone.OnInit(); } } Ну или скачиваем его отсюда в готовом виде:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      Здесь:
       'SAFEZONE_LOACTIONS' - координаты точкек центра сейвзоны, можно указать несколько.
      'SAFEZONE_RADIUS' - радиус от указанного центра севзоны, на котором действует защита
      'ENTRY_MESSAGE' - сообщение о входе в зону (не рекоммендуется указывать русский язык, может не отображаться)
      'EXIT_MESSAGE' - сообщение о выходе из зоны (не рекоммендуется указывать русский язык, может не отображаться)
      'SAFEZONE_time_repeat_checking' - время повтора проверки наличия игроков в зонах, в секундах
      'Activate_SafeZone_PlugIn' - активация плагина скрипта, true - ключен, false - выключен
      4. Запускаем сервер и проверяем.
       
      Для совсем ленивых готовая миссия сервера с настроенной сейвзоной для патча игры 1.06 
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
       
      Гайд обновлен: 31.01.2020
       
       
    • Автор: DrTauren
      На нашем сайте предусмотрена возможность рекламирования вашего игрового сервера/сайта/програмного обеспечения при помощи баннеров и ссылок.
       
      Баннеры под первым сообщением темы ↓
       
      Баннер на главной странице (над чатом) ↓
       
      Ссылки над первым сообщением темы ↓
       
      Ссылка на главной странице (над чатом) ↓
       
       

      Заявку вы можете заполнить в этой же теме, либо написать мне в ЛС.
      Любые сообщения не по теме запрещены.
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.