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

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

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

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

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

Товарищи, вот глядите. Серверные файлы дейз-епоча имеют вполне наглядную структуру в папке с игрой(серверный аддон, миссия, инстанс, база данных...)

Как построить сервер такой же структуры только не епоч, а чисто арма2? Я не имею ввиду использование сторонних програм запускающих сервер и миссию. Именно серверные файлы арма2оа в таком виде как епочевские

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


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

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

  • 0

Товарищи, вот глядите. Серверные файлы дейз-епоча имеют вполне наглядную структуру в папке с игрой(серверный аддон, миссия, инстанс, база данных...)

Как построить сервер такой же структуры только не епоч, а чисто арма2? Я не имею ввиду использование сторонних програм запускающих сервер и миссию. Именно серверные файлы арма2оа в таком виде как епочевские

В стиме, в инструментах, скачай arma 2 dedicated server, и довольствуйся =)

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


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

В стиме, в инструментах, скачай arma 2 dedicated server, и довольствуйся =)

 

Извини, можно попросить тебя скачать? Не имею технической возможности. Выложи в теме. Может пригодится тоже армаголикам.

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


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

Я только Арма 2 ОА Dedicated Server нашел в стим. 

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


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

Я только Арма 2 ОА Dedicated Server нашел в стим. 

ну да, это оно и есть, сервера арма 2 закрыли еще летом прошлого года, можно только через лан и хамачи

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


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

Я только Арма 2 ОА Dedicated Server нашел в стим. 

 

ОНО-ОНО!!! Енотэ выложи пожалуйса.

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

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


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

Я только Арма 2 ОА Dedicated Server нашел в стим. 

 

Видел! Но там для линукса, верно?

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


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

Видел! Но там для линукса, верно?

Без понятия вообще. Сегодня залью.

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


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

 

Сегодня залью.

 

Ты лучший, ждёмс.

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


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

https://yadi.sk/d/B3ZD4nEyh7WMC

11 мб скачал мне стим. Там 1 exe и только. Возможно потребуется стим для запуска, не тестил.

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


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

https://yadi.sk/d/B3ZD4nEyh7WMC

 

11 мб скачал мне стим. Там 1 exe и только. Возможно потребуется стим для запуска, не тестил.

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

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

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


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

А зачем тебе готовая сборка? Возьми серверные файлы от того же эпоча. Там переделывать-то всего на 5 минут :)

Иди в C:\Твой_сервер\инстанс и открывай config.cfg

 

hostName = "Мойсуперпупер сервер редиски"; \\ тут все ясно...
password = "";                 \\ Если хочешь запаролить сервер
passwordAdmin = "123321";  \\ тут тоже все ясно...
maxPlayers = 50;                \\ кол-во играющих редисок
steamport =2300;               \\ порт
steamqueryport =2301;
logFile = "server_log.txt";     \\ логфайл
voteThreshold = 2;
voteMissionPlayers = 3;
reportingIP = "arma2oapc.master.gamespy.com";
timeStampFormat = "short";
motd[] = {"Ку-ку епта!","Ты попал в ад!"};  \\ сообщения
motdInterval = 15;                                       \\ интервал между ними
vonCodecQuality = 11;                            \\ качество звука в голосовом чате
disableVoN = 0;                                        \\ голос. чат
kickduplicate = 1;
verifySignatures = 1;                                  \\ проверка сигнатур (чтобы люди с измененными PBO файлами не заходили)
persistent = 1;
BattlEye = 1;                                               \\ батлглаз
doubleIdDetected = "";
onUserConnected = "";
onUserDisconnected = "";
onUnsignedData = "kick (_this select 0)";
onHackedData =     "kick (_this select 0)";
onDifferentData = "";
regularCheck = "";
requiredBuild = 103718;
requiredSecureId = 2;
 
class Missions
{
    class Mission1
    {
        template = "ArmaOA_Blea";     \\ Тут пишешь название своей миссии
        difficulty="veteran";                  \\ veteran- все как обычно, mercenary- хардкор, вид только от 1-ого лица.
    };
 
};


Идем дальше...

В этом же инстансе открываем BEServer.cfg

MaxPing 400    \\ тут все ясно..
RConPassword 123321 \\ пароль от дарта и всего остального.

По фильтрам BattlEye я кстати не знаю. Спроси у спецов где взять фильтры на чистую арму:)

 

Кхм... но вот вроде и все:) Ах да.. батник.
Думаю на чистую арму бек не нужен... Но если ты хочешь...

 
Start Expansion\beta\arma2oaserver.exe -port=2300 "-config=instance\config.cfg" "-cfg=instance\basic.cfg" "-profiles=instance" -name=instance "
timeout 60
cd C:\Steam\SteamApps\common\Arma 2 Operation Arrowhead\BEC
"C:\Steam\SteamApps\common\Arma 2 Operation Arrowhead\BEC\Bec.exe" -f config.cfg
exit


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

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


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

Меня тоже интересует вопрос - как использовать базу данных от Эпоча, но для обычных миссий. Без зомби, лута и прочего геймплея? Какие файлы можно удалить, а что обязательно оставить? А если точнее - какие файлы нужны, чтобы работало сохранение статуса игрока, его координаты на карте и его инвентарь, чтобы я смог запускать это для обычной миссии, и желательно без Эпоча. Заранее спасибо!

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


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

Меня тоже интересует вопрос - как использовать базу данных от Эпоча, но для обычных миссий. Без зомби, лута и прочего геймплея? Какие файлы можно удалить, а что обязательно оставить? А если точнее - какие файлы нужны, чтобы работало сохранение статуса игрока, его координаты на карте и его инвентарь, чтобы я смог запускать это для обычной миссии, и желательно без Эпоча. Заранее спасибо!

Никак. Это задача длл связанных с базой, которые поставляются в моде серверных файлов.

Если тебе к примеру арма-лайф миссию сейфить нужно, вот тул.

https://github.com/cpx-graeme/Arma2SQL-LIFE

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: Troy1
      Пока ждал помощи, решил вопрос!
      Тема закрыта!!!
    • Автор: -Reks-
      Продам сервер по DayZ/ Есть 
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: SemKa1407
      Ссылка на архив: https://disk.yandex.ru/d/WmYW5AcZozGSiA
      Инструкция, написанная на коленке, есть в архиве (для полных нулей).
    • Автор: SemKa1407
      Будьте добры, помогите пожалуйста.
      Проблема в том, что не приходят сообщения в нужное время. Скорее всего неправильная логика.
      class FakeChatNotifier { ref Timer m_Timer; ref Timer m_MessageTimer; bool m_IsActive; // Списки диалогов ref array<ref array<string>> m_WelcomeDialogs; ref array<ref array<string>> m_RegularDialogs; ref array<ref array<string>> m_ThreatDialogs; void FakeChatNotifier() { m_Timer = new Timer(); m_MessageTimer = new Timer(); m_IsActive = false; // Инициализация диалогов InitializeDialogs(); Print("[FakeChatNotifier] Initialized"); // Лог для проверки инициализации } void InitializeDialogs() { // Приветственные диалоги m_WelcomeDialogs = new array<ref array<string>>; m_WelcomeDialogs.Insert({"Hello!", "How are you?"}); m_WelcomeDialogs.Insert({"Anyone alive?", "Yes, I am here. What's new?"}); m_WelcomeDialogs.Insert({"What's the situation?", "It seems quiet, but stay sharp."}); // Обычные диалоги m_RegularDialogs = new array<ref array<string>>; m_RegularDialogs.Insert({"Check radio frequency 98.7", "Got it, I'll stay alert."}); m_RegularDialogs.Insert({"Never trust strangers", "Right, it's every man for himself here."}); m_RegularDialogs.Insert({"I saw someone near the old factory", "Thanks for the info, I'll check it out."}); // Угрозы m_ThreatDialogs = new array<ref array<string>>; m_ThreatDialogs.Insert({"We will find you...", "Try, but I won't give up."}); m_ThreatDialogs.Insert({"You won't escape", "I'm ready for this."}); m_ThreatDialogs.Insert({"Your loot will be ours", "You wish."}); } void Start() { if (!m_IsActive) { m_IsActive = true; m_Timer.Run(60, this, "CheckTime", NULL, true); // Запуск таймера на проверку каждые 60 секунд Print("[FakeChatNotifier] Started main timer"); // Лог для проверки запуска } } void Stop() { m_IsActive = false; m_Timer.Stop(); m_MessageTimer.Stop(); Print("[FakeChatNotifier] Stopped timers"); // Лог для проверки остановки } // Функция для получения текущего времени void GetCurrentHour(out int hour) { int year, month, day, minute; GetGame().GetWorld().GetDate(year, month, day, hour, minute); // Получаем текущий час из даты Print("[FakeChatNotifier] Current hour: " + hour); // Лог для проверки текущего времени } void CheckTime() { int hour; GetCurrentHour(hour); // Используем нашу функцию для получения текущего часа if (hour >= 22 || hour < 6) { if (!m_IsActive) { Print("[FakeChatNotifier] Night time detected, starting dialog cycle"); // Лог для ночного времени StartDialogCycle(hour); } } else { Print("[FakeChatNotifier] Day time, stopping dialogs"); // Лог для дневного времени Stop(); } } void StartDialogCycle(int hour) { if (!m_IsActive) return; array<string> dialog; if (hour >= 22 && hour < 23) { dialog = m_WelcomeDialogs.GetRandomElement(); // Приветственные диалоги Print("[FakeChatNotifier] Sending welcome dialog"); // Лог для приветственных диалогов } else if (hour >= 23 && hour < 3) { dialog = m_RegularDialogs.GetRandomElement(); // Обычные диалоги Print("[FakeChatNotifier] Sending regular dialog"); // Лог для обычных диалогов } else if (hour >= 3 && hour < 6) { dialog = m_ThreatDialogs.GetRandomElement(); // Угрозы Print("[FakeChatNotifier] Sending threat dialog"); // Лог для угроз } SendDialog(dialog); ScheduleNextDialog(); // Планирование следующего диалога } void ScheduleNextDialog() { int interval = Math.RandomIntInclusive(900, 1500); // Интервал (15-25 минут в секундах) m_MessageTimer.Run(interval, this, "StartDialogCycle", NULL, false); Print("[FakeChatNotifier] Scheduled next dialog in " + interval + " seconds"); // Лог для планирования следующего диалога } void SendDialog(array<string> dialog) { for (int i = 0; i < dialog.Count(); i++) { float delay = i * Math.RandomIntInclusive(5, 9); // Задержка между сообщениями в диалоге (5-9 секунд) m_MessageTimer.Run(delay, this, "SendMessageToPlayers", new Param1<string>(dialog[i]), false); Print("[FakeChatNotifier] Scheduled message with delay " + delay + " seconds: " + dialog[i]); // Лог для отправки сообщения } } void SendMessageToPlayers(Param1<string> param) { string message = param.param1; array<Man> players = new array<Man>; GetGame().GetPlayers(players); if (players.Count() > 0) { foreach (Man player : players) { Param1<string> globalMessage = new Param1<string>(message); GetGame().RPCSingleParam(player, ERPCs.RPC_USER_ACTION_MESSAGE, globalMessage, true, player.GetIdentity()); } Print("[FakeChatNotifier] Sent message to all players: " + message); // Лог для отправленного сообщения } else { Print("[FakeChatNotifier] No players online to send message: " + message); // Лог для случая, если нет игроков } } }  
    • Автор: Troy1
      Всем привет. Помогите пожалуйста со скриптом.
      Суть. Я пытаюсь сделать синхранизацию сервера с клиентом передавая c конфига время разделки животного.
      В родных скриптах есть class UATimeSpent с константами и там есть константа SKIN.
      Мне нужно её перезаписать на своё значение и мне выдаёт ошибку: Trying to modify write protected variable 'SKIN' в переводе на Русский Попытка изменить защищенную от записи переменную «SKIN».
      Функция скрипта: Когда игрок запускает клиент, идёт запрос на серверную часть и получает в ответ время разделки.
      Задача: Нужно перезаписать константу SKIN на новое значение и всё.
      Сам скрипт.
      class timeToComplete extends UATimeSpent { protected ref UATimeSpent m_UATimeSpent; void timeToComplete() { GetDayZGame().Event_OnRPC.Insert(OnRPC); CheckUATimeSpent(); } void ~timeToComplete() { GetDayZGame().Event_OnRPC.Remove(OnRPC); } void CheckUATimeSpent() { GetGame().RPCSingleParam(NULL, SOC_TIME_RPCs.SOC_GT, NULL, true); } void OnRPC(PlayerIdentity sender, Object target, int rpc_type, ParamsReadContext ctx) { if (rpc_type == SOC_TIME_RPCs.SOC_RT) { Param1<float> soc_srt; if (ctx.Read(soc_srt)) { if (soc_srt.param1!= 0) { m_UATimeSpent.SKIN = soc_srt.param1; Print("Пришёл ответ от сервера в m_UATimeSpent.SKIN - " + m_UATimeSpent.SKIN) } } } } };  
  • Наш выбор

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

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

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

Поддержка