Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Толстый/тонкий сервер. Синхронизация состояние мира. Какие минусы видите в такой реализации? (4 стр)

Толстый/тонкий сервер. Синхронизация состояние мира. Какие минусы видите в такой реализации? (4 стр)

Поделиться
Advanced: Тема повышенной сложности или важная.

Страницы: 1 2 3 4 5 6 ... 10 11 12 Следующая

kiparПостоялецwww4 окт. 201621:50#45
tac
> Дизассемблировать код, угадать какой mov ответственен за изменения позиции бота
> и его поменять ? Не слишком ли сложно для читеров :)
Если игра на C#, то после дизасма там будет не mov, а почти настоящий C#. Так что найти процедуру которая столкновения со стенами проверяет, подменить ее в рантайме и норм.
robotcityПостоялецwww4 окт. 201621:54#46
читеры, я вообще не понимаю как они SAMP сделали не имея доступа к исходному коду, а ведь еще есть net sniffer-ы, которые без проблема могут перехватывать и поделывать данные, другое вопрос кому это нужно, только если проект будет очень популярен тогда расковыряют под корень, а так подход вполне оправдан если нужно съэкономить на серверах.
MrShoorУчастникwww4 окт. 201621:55#47
tac
> 2. Рассчитать тем-ру тела всех персонажей при наступлении вечера
Ну и зачем это делать базой, когда у тебя код мира на сервере крутится? Вообще использовать базу для программирования логики мира - это тот еще изврат. База даных - она на то и называется так, что в ней хранятся данные. Можешь объяснить зачем рассчет температуры тела выносить в базу? Какой профит ты от этого получишь?

Правка: 4 окт. 2016 21:56

tacПостоялецwww4 окт. 201621:57#48
MrShoor
> Отследить какой участок памяти хранит здоровье например. Менять его внешним
> кодом на максимальное всегда, и обеспечить себе бессмертие.

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

MrShoorУчастникwww4 окт. 201622:07#49
tac
> просто по логам сверит зависимость увеличения здоровья  и применения аптечек,
> ну и заблокировать читера.
Костыльцы предлагаешь? Надо вести подробный журнал логов (который можно было бы не вести), писать код проверки этих логов, а еще проблемы читеров это не решает, т.к. читер уже начитерил, и начнутся создаваться однодневные аккаунты, которые должна банить служба поддержки, а если напишешь автоматизированную систему - то обязательно будут баги, и полетят головы обычных пользователей. Будет весело в общем.
И это если отбросить то, что такую систему еще надо написать.

tac
> а если хочется и в онлайне
Тогда какой смысл? Просто делай все рассчеты на сервере. Зачем все эти сложности? Или просто сложности ради сложностей?

tac
> только тогда когда она более чем популярна /никто не будет с этим возится в
> большинстве инди-игр/
Будет у тебя онлайн 100+ человек, я практически уверен что среди них будут читеры.

tac
> ну а во вторых, надо писать целенаправленное решение, которое не влияет на
> выбор архитектуры
Я вообще не пойму к чему ты про архитектуру заговорил. Что ты подразумеваешь под разной архитектурой? Разное железо? Или архитектуру кода?

tacПостоялецwww4 окт. 201622:09#50
kipar
> Если игра на C#, то после дизасма там будет не mov, а почти настоящий C#.

ildasm ?

tacПостоялецwww4 окт. 201622:12#51
robotcity
> а ведь еще есть net sniffer-ы, которые без проблема могут перехватывать и
> поделывать данные

ну тут просто надо шифровать нет траффик

robotcityПостоялецwww4 окт. 201622:15#52
tac
да шифрование поможет, к примеру wot шифрует свой траффик из за чего у них читеры большая редкость.
MrShoorУчастникwww4 окт. 201622:16#53
tac
> ну тут просто надо шифровать нет траффик
https://en.wikipedia.org/wiki/Man-in-the-middle_attack
robotcityПостоялецwww4 окт. 201622:18#54
tac
и самое главное везде говорить что у тебя все расчеты идут на сервере, на форуме даже липовую темку создай, так как эту инфу всегда ищут читаки, есть вероятность что желание отпадет)
tacПостоялецwww4 окт. 201622:29#55
MrShoor
> Зачем все эти сложности? Или просто сложности ради сложностей?

аргументы против авторитарного сервера были представлены )

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

Ведь защита от читеров появляется не бесплатно на авторитарном сервере, там по определению все перепроверяется (или расчитывается) на сервере - это дорого.

tacПостоялецwww4 окт. 201622:37#56
MrShoor
> tac
> > ну тут просто надо шифровать нет траффик
> https://en.wikipedia.org/wiki/Man-in-the-middle_attack

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

> Алиса просит у Боба его открытый ключ. Мэлори представляется Алисе Бобом и отправляет ей свой открытый ключ. Алиса, считая, что это ключ Боба, шифрует им сообщение и отправляет его Бобу.

расшифровка происходит на сервере, клиенту отправляется ключ для шифрования (и время от времени меняется). Если Мэлори представится клиенту сервером, ну зашифрует клиент не тем ключом, сервер просто не сможет расшифровать, и выкинет этот мусор ... а с сервера никто ключ не получит.

Правка: 4 окт. 2016 22:37

mcivПостоялецwww4 окт. 201622:45#57
> Если в мире мало камней, но при этом их постоянно швыряют игроки

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

футбол этим камнем :)

tacПостоялецwww4 окт. 201622:54#58
mciv
> футбол этим камнем :)
уговорили уже, логов теперь нет (см. выше)

Правка: 4 окт. 2016 22:55

MrShoorУчастникwww4 окт. 201623:19#59
tac
> Наличие читеров - это аргумент со слабым приоритетом
То есть производительность и простота реализации - не аргументы? Ну ок.

tac
> но сдается мне, что тот сценарий который там описан не возможно реализовать на
> практике
Тебе только сдается это. Эту атаку можно избежать только одиним способом: клиент проверяет, что ключ сервера выдан центром сертификации. Если у тебя есть возможность изменить код клиента (выключить эту проверку например) - то дальше можно делать что угодно. Т.к. читер заинтересован в том, чтобы читить - естественно он патчит клиент так как ему надо. А дальше уже обычный Fiddler может без проблем снивать траффик.

Страницы: 1 2 3 4 5 6 ... 10 11 12 Следующая

/ Форум / Программирование игр / Сеть

2001—2017 © GameDev.ru — Разработка игр