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

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

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

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

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

Передача данных сервера в сторонюю программу

Хочу сделать возможность передачи данных об каждом игроке в программу на c#. Есть ли возможность как-то завязаться на rcon или с помощью кастомного сокета?

 

Пока сделал часть с помощью текстового документа: сервер сохраняет данные в файл, а программа читает этот файл и получает необходимые данные, но это костыль, хотелось бы сделать нормально.

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

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


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

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

  • 1

вариант 1 - тектовый файл, файл на json и т.п. на основе файлов

вариант 2 -  web-сервер или парсер на основе какого-нибудь node.js который бы анализировал get-post запросы сервера на определенный адрес и выдавал бы результаты, ну или просто получал бы данные.

Последнее можно в теории сделать в виде доп обвязки на свои системы, но как ни крути, надо изучать как написать хотя бы php страницу такую, читающую эти данные. В остальном все в ваших руках.

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

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


Ссылка на сообщение
Поделиться на других сайтах
MagicByte MagicByte MagicByte
  • 0
17.10.2023 в 20:06, 123new сказал:

вариант 1 - тектовый файл, файл на json и т.п. на основе файлов

вариант 2 -  web-сервер или парсер на основе какого-нибудь node.js который бы анализировал get-post запросы сервера на определенный адрес и выдавал бы результаты, ну или просто получал бы данные.

Последнее можно в теории сделать в виде доп обвязки на свои системы, но как ни крути, надо изучать как написать хотя бы php страницу такую, читающую эти данные. В остальном все в ваших руках.

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

 

А есть ли возможность поднять свой сокет на сервере? Видел, что rcon работает по такому протоколу.

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

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


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

 

А есть ли возможность поднять свой сокет на сервере? Видел, что rcon работает по такому протоколу.

что поднять? Не понял от слова вообще. Rcon в данной игре работает по протоколу, обусловленному battleye античитом и исходным кодом игры, заданным его атворами. Что вы на нем пытаетесь сделать мне мягко говоря не ясно, но могу сказать одно - все что на нем может быть - весьма ограничено рамками комманд античита, обусловленных на его оф сайте battleye.com

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


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

что поднять? Не понял от слова вообще. Rcon в данной игре работает по протоколу, обусловленному battleye античитом и исходным кодом игры, заданным его атворами. Что вы на нем пытаетесь сделать мне мягко говоря не ясно, но могу сказать одно - все что на нем может быть - весьма ограничено рамками комманд античита, обусловленных на его оф сайте battleye.com

 

Можно ли свой socket поднять на самом сервере, в файлике init.c. 

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


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

 

Можно ли свой socket поднять на самом сервере, в файлике init.c. 

что есть socket?

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


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

что есть socket?

TCP или UDP сокет, предназначенный для передачи данных между программами, не знаю, как еще проще написать

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


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

TCP или UDP сокет, предназначенный для передачи данных между программами, не знаю, как еще проще написать

исключительно GET-POST запросы на web сервер по заранее прописанному в коде адресу, либо файлы. никаких сокетов вприципе не существует.

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


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

исключительно GET-POST запросы на web сервер по заранее прописанному в коде адресу, либо файлы. никаких сокетов вприципе не существует.

окей, спасибо)

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: Troy1
      Всем привет. пишу мод и столкнулся с проблемой в реализации.
      Суть: Пытаюсь сделать проверку, если игрок стоит прям у окна или у дверного проёма он должен получать урон.
      Делал вот так.
      int wallHits = 0; float d = 2.2; // Дистанция до стены. Если стена дальше — считаем, что там окно или проем. // 8 направлений "снежинкой" для проверки стен вокруг игрока // Используем Vector(x, y, z) для точности ref array<vector> checkDirs = { Vector(d,0,0), Vector(-d,0,0), Vector(0,0,d), Vector(0,0,-d), Vector(d,0,d), Vector(-d,0,-d), Vector(d,0,-d), Vector(-d,0,d) }; foreach (vector dir : checkDirs) { // Пускаем горизонтальные лучи от позиции игрока (from) if (DayZPhysics.RayCastBullet(from, from + dir, collisionLayerMask, this, hitObject, hitPosition, hitNormal, hitFraction)) { // ПРОВЕРКА: Это должна быть вертикальная стена (Y нормали < 0.5) // Чтобы не засчитать низкий потолок за стену if (Math.AbsFloat(hitNormal[1]) < 0.5) { wallHits++; } } } // УСЛОВИЕ БЕЗОПАСНОСТИ: // В комнате wallHits будет 6-8. У окна или в проеме — 1-4. if (wallHits < 5) { hasSafeCeiling = false; // Слишком открытое пространство (окно/дверь) } Пытался менять дистанции, но всё ровно не как не хочет работать.
      Что я делаю не так, или я вообще делаю не то?
      Мне нужно проверять игрока, в укрытии он или нет.
      С высотой я разобрался, а вот с боковыми лучами у меня траблы и не во всех помещениях работает как нужно.
      В некоторых помещениях вообще не работает, удаляешь строки проверки, начинает работать и то по высоте.
      Просто забегаешь по навес и игрок под защитой, так не должно быть.
      Помогите пожалуйста  решить задачу.
    • Автор: Troy1
      Всем привет. Суть в чём, пишу мод на событие и когда происходит событие, параллельно должна меняться скорость ветра, не могу понять как заставить скрипт управлять силой ветра. Понижать силу ветра получилось сделать, а вот повышать не как. Только после перезагрузки сервера сила ветра задаётся в нужном значение.
      Как сделать, что бы по вызову функции менялась сила ветра в большую или в меньшую сторону?
      protected void SetWind(float wind, float time) { if (!g_Game) return; Weather m_Weather = g_Game.GetWeather(); if (!m_Weather) return; m_Weather.SetWindMaximumSpeed(wind); m_Weather.SetWind(Vector(1/Math.Sqrt(3), 1/Math.Sqrt(3), 1/Math.Sqrt(3)) * wind); m_Weather.SetWindSpeed(wind); m_Weather.SetWindFunctionParams(1.0, 1.0, -1); } Это скрипт на понижение силы ветра.
      Работает понижение силы ветра в том случае, если до этого сила ветра была выше.
      Пример:
      Изначально на сервере сила ветра = 20 m/s А нужно понизить до 10 m/s
      Только в этом случае сработает скрипт который я приложил выше.
      Помогите пожалуйста решить этот вопрос.
      За ранние благодарю.
    • Автор: Troy1
      Пока ждал помощи, решил вопрос!
      Тема закрыта!!!
    • Автор: magliner
      Привет ! Ну вот моя история с вопросом в конце.. Я фанат Дэйз ванилы черноруси, заколебало сидеть на бездушных серверах со слабой админкой и терять лут от софтеров, решил создать под свои скромные запросы около ванильный сервер.. Нашел хорошего исполнителя, быстро и четко запустили отладили и ВОТ я имею СВОЙ сервер.. клас! вечер восторга и изучения
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

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

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

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

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