Здраствуйте!
Уже долгое время ищю способ по защите своей игры на Unity от читов. Игра из себя представляет стратегию. Можно строить здания, эти здания что-то производят и т.д. Этим занимаються рабочие. При вырубке дерева или при старте производства, выходит персонаж и делает работу(копает грядки, замешивает тесто и т.п.). Производством и синхронизацией зданий может заняться бд с MySQL+ PHP. Клиент отпраляет запрос "Я хочу начать производство хлеба в пекарне". Сервер проверяет: 1)есть ли вообще перканя в деревне 2) есть ли необходимые ресурсы 3) Не занята ли пекарня другим производством и т.д. А вот как быть с рабочими? Их двигает коротин каждую секунду и проигрывает анимации, от которых зависит производство. Когда кто-то заходит к кому-то в дреревню, на сервере фотона создаеться комната с именем игрока. Туда помещаеться: 1) если хозяина нету в сети, то только гость и прогружаеться деревня с бд на mysql 2) если хозяин есть, то комната не создаеться, а туда просто пихаеться гость и наблюдает уже прогруженные объекты деревни. Хост отвечает за перемещение рабочих, но он может читерить и отправлять фейковое, к примеру, положение рабочего в деревне.
Почитал годное решение этой проблемы. Можно при конекте первого игрока в комнату, автоматически подключать фейкового игрока(хоста). Ему будут отпралять запросы другие игроки(Хозяин деревни и гость), а уже этот агент без обмана будет контролировать рабочих и все остальное, ведь он не находиться на устройствах игроков и подчиняться только серверу.
И вот вопрос к бывалым: как сделалать этого агента и куда его потом загружать для круглосуточной работы? Сразу скажу, что я студент и сотней баксов на дорогущие хосты в кармане не имею. Если это дело неподьемное для меня одного, то скажите сразу и я буду искать другое решение. Спасибо за внимание!