Ответы пользователя по тегу Разработка игр
  • Можно ли использовать TCP протокол для игрового сервера?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    200 ms это много.
    Считается, что 20-40 мс достаточно для шутеров. Меньше - достаточно для про-чемпионата в локалке.
    При этом 20-40 мс это при отправке килобайтного пакета.
    Вопрос в том, что вы отправляете, как часто и как много клиентов.
    Ответ написан
    Комментировать
  • Как определить что игре не хватает оперативной памяти?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Как определить что игре не хватает оперативной памяти?

    Почитать документацию к игре. Там указаны рекомендуемый и минимальный объем оперативной памяти.

    Вот как понять, что фризы - это именно следствие нехватки памяти?

    Ну самый простой способ - добавить памяти и посмотреть пропадут ли фризы.
    Другие способы, если ты не разработчик игры, вряд ли дадут 100% ответ.
    Ответ написан
    Комментировать
  • Примеры технической документации на английском для gamedev-а?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    А чем геймдев разработка отличается от негеймдев разработки?
    Ничем.
    Ответ написан
    Комментировать
  • Лаунчер игрового проекта скачивание файлов игры через torrent, хорошие ли решение?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Некоторые игры так и делают - встраивают в игру торрент клиент и торрент сервер, и распространяют обновления, которые скачиваются распределенно.
    Это удобно для игр, у которых есть лобби, чтобы не аффектило саму игру.
    Ну и не надо "серверить" на слишком слабых ПК с маленьким аплоадом, что легко проверяется.
    Ответ написан
    Комментировать
  • Как запретить игрокам общаться по дискорду?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Никак. Вы не можете запретить другим людям пользоваться другими программами.
    Ответ написан
    Комментировать
  • Как функционируют читы в онлайн играх (Multiplayer)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Они каким-то образом вызывают на стороне клиента функционал который есть в игре (native code C++), или вызывают функционал предоставленный конкретным мультиплеером для клиентской стороны (client-side), тогда, как они это все синхронизируют?


    Все читы используют один из двух вариантов.

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

    2. Вмешательство в работу клиента, вызов его определенных функций (или подмена их на свои) при помощи вмешательства в процесс или dll-injection, что например делает autoaim.

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

    Например представим простую мобильную игру, кубик рубик.
    Сервер присылает вам запутанный кубик, который вам нужно собрать его за x ходов.

    Что нужно определить:

    Что отправляет клиент - каждый ход отдельно, или итог в конце.

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

    Если клиент отправляет результат уже в конце, то проверить - он отправляет всю последовательность ходов или просто пакет типа "уровень пройден, потрачено xx ходов". В этом случае вообще не проблема подделать такой пакет, и сразу его отправлять, проходя уровни мгновенно, не решая задачу в принципе. Или например взломам количество доступных ходов, чтобы можно было поиграться без лимита, а при отправке возможно в пакете нужно будет отправлять "легальное" количество ходов. А есть еще вероятность что на стороне сервера никто не проверяет валидность. А может быть и наоборот, что вся последовательность ходов и их количество хешируется, корректность хеша проверяется на стороне сервера.
    И так далее.

    Выдача визуальной подсказки куда двигаться - это вмешательство в клиент, никак не затрагивая работу сервера. Грубо говоря autoaim, который отследить программно проблематично, особенно если его правильно сделать.
    А подделка пакета - это вмешательство в протокол обмена.

    Во всех случаях нужно уметь программировать и реверс-инженерить, а также долго разбираться как работает сервер и клиент. И если у вас нет доступа к исходному коду сервера и клиента, задача в разы усложняется.
    Ответ написан
  • Jagged Alliance Back in Action. Можно ли самому редактировать карту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    А значит, теоретически, можно подобрать инструмент для работы с ним.


    Подобрать инструмент ;) ну так блокнот подойдет.
    Если производитель не выпускал в паблик редактор карт, то своими силами без документации его можно только разбирать и писать, поэтому копать нужно в сторону реверс инженеринга.
    Можно поискать сообщества, которые этим уже занимались. Но насколько глубоко они копнули, и осилили ли написать более-менее рабочий инструмент - неизвестно.
    Ответ написан
    Комментировать
  • Тестировщик. С чего начать?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Юный друг.
    Ты не один в этом мире.
    Есть очень много других юных друзей, которые хотят пойти в тестировщики.
    И те, у которых это скорее всего не получится, задают подобные вопросы практически каждую неделю

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

    Подумай к каким ты хочешь относиться.
    Ответ написан
    Комментировать
  • Лет 15 назад как люди ддосили сервера кс 1.6?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    В отличие от CS source, сервера КС 1.4, 1.5 и 1.6 поднимали школьники и студенты на чем попало и где подешевле.
    Мощности у такой железки были небольшие, гигабиты 15 лет назад были в основном у трансмагистральных провайдеров. Поэтому вполне могло найтись приличное количество людей, у которых хватало ресурсов чтобы заддосить жалкий недосервер.
    На серверах побольше это уже было проблемно.
    Да и настройки серверов не всегда отличались адекватной безопасностью. Ту же кастомную карту с сервера скачать - можно было подделать запрос и парралельно запустить 20-30 скачиваний, что давало нагрузку.
    Ответ написан
    Комментировать
  • Что делать, если ты можешь сделать только то, что есть в туториале?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Изучите базовые вещи.
    Почитайте любой учебник.
    Не лезьте в онлайн игры, сделайте простые вещи оффлайн
    Потом можно снова сделать что-то по туториалу и попробовать немного изменить/добавить от себя, а не делать с нуля что-то другое.
    Ответ написан
    Комментировать
  • Где производить вычисления для онлайн игры?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Когда-то слышал что для этого нужен VPS, хотел уже идти покупать, но прочёл что не только его можно оказывается. Но что можно ещё я так и не понял.

    А уже есть сама игра? Или что ты собрался вычислять?

    По твоему вопросу вообще непонятна твоя цель. Где-то что-то вычислять, но еще даже не начал писать саму игру? Или какие конкретно вычисления тебя интересуют?

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

    Можешь сервер игры запустить на домашнем ПК и вычислять.
    Ответ написан
    8 комментариев
  • Какую бд использовать в песочнице?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    sqlite
    Ответ написан
    Комментировать
  • Восстановление закрытого PUBG Lite?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Так вот я хотел спросить возможно ли переписать клиент игры так, чтобы он подключался к моему серверу(серверам) и так же работать? Игра особо не защищена как я понял, в отличие от стимовского (большого) пабга.

    • Возможно будет так сделать? • На сколько это будет сложно? • Что для этого будет нужно? • Это все бред?

    Конечно можно. Вот для L2 написали свой сервер с нуля. Несколько десятков человек используя многолетний наработанный опыт игроков за несколько лет написали глючный сервер, в котором с трудом работает 10% квестов, но в принципе можно играть. Но несерьезно. Довести до ума - взять еще несколько десятков человек, заплатить чтобы они писали не в свободное время а нормальное рабочее и за год-два может быть и написали бы.

    Что там в пубг - не знаю, но то, что тебе это будет не под силу - инфа 100%.

    P.S. Все пройдет. И любовь и радость. Не держись за игру, жизнь слишком коротка чтобы в ней все время делать одно и тоже. Просто будут воспоминания. Сделайте группу в телеграмме, будете через 20 лет в нее кидать ностальгические цитаты.
    Ответ написан
    Комментировать
  • Как быстро раскручиваются игры?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Нужно понимать, что просто взять x денег и вложить в раскрутку - явно недостаточно.
    Нужно уметь раскручивать и иметь для этого нужные каналы.

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

    Поэтому те, кто уже вкатились - им проще. Но всегда что-то может пойти не так.
    Ответ написан
  • Как называют человека, за которым стоит сеттинг игры, и каков путь формирования этого специалиста?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Ну геймдизайнеры.

    Опять таки, это может быть несколько человек, которые делят одни и те же обязанности, или несколько человек, которые занимаются разными вещами. Один делает общую территорию и ЛОР, другой делает основной сюжет и квесты.
    Ответ написан
    Комментировать
  • Какие книги можно почитать о написании сервера для различных приложений и игр?

    saboteur_kiev
    @saboteur_kiev Куратор тега Книги
    software engineer
    Сомневаюсь, что кто-то прям пишет книги по этому поводу.
    У крупных проектов, где важна скорость, есть просто реализация. И вряд ли кто-то будет писать книгу как он придумывал свою структуру сетевого пакета.
    В лучшем случае, будет проще посмотреть реализацию в опен-сорс проектах.
    Банально можно посмотреть исходники популярных ftp, http серверов
    Можно посмотреть исходники игрушек - начиная от текстовых MUD основанных на телнет, простых стратегий или что-то сложное, типа самодельного джава сервера MMORPG https://github.com/oonym/l2InterludeServer или даже официальных исходников https://github.com/id-Software/Quake
    Ответ написан
    Комментировать
  • Как работают сессии матчей в онлайн играх?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Является ли каждая игровая сессия, в которой сидит по 10 игроков, новым процессом на сервере? Или это реализовано как-то по другому?

    По-разному.
    Может быть отдельный процесс.
    Может быть отдельный тред.
    Может быть вообще один процесс на все.

    Зависит от игры, от матча, от требований к быстродействию и синхронизацию.
    Ответ написан
    Комментировать
  • Как начать путь в сферу game дизайна?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Игры - тоже программы. Сперва стань разработчиком, потом ищи вакансии для разработки игр.
    Ответ написан
  • Какая реклама более выгодна в играх на мобилки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Через блоггеров
    Ответ написан
    Комментировать
  • Как сделать сервер для собственной игры?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Погугли
    zuntzu

    Возможно подойдет уже готовое, с темплейтами для разных настолок.
    Правда я не знаю насколько проект жив, раньше был весьма ктивен
    Ответ написан
    Комментировать