Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Разработка выделенного сервера для игры?

Разработка выделенного сервера для игры?

Поделиться
monobogdanПостоялецwww29 мая 201715:58#0
Хочу попробовать написать выделенный сервер для игры.
Но проблемы возникают даже тогда, когда клиент просто напросто пытается подключится к мастер серверу.
IP то я словил, попробовал в IDA и в Cheat Engine их поискать(и сами пакеты тоже), но не нашел.
Хз как хукать, может кто то лучше знает как реверсить игры?
Как все таки ловить эти пакеты? Досаточно хотя бы просто IP подменить в клиенте.
Инфы по NFS в гугле ноль(в отличии от GTA например), никаких баз для IDA Pro нет.

Правка: 29 мая 2017 16:11

Greg0ryПостоялецwww29 мая 201716:40#1
IP может лежать где-то в кофиге. Вряд ли он захардкожен. На счет пакетов - если вы думаете что всё просто, и лежит в открытом виде - вы глубоко ошибаетесь. В почти открытом виде лежать может - если игра написана на юнити, а скрипты особо не запакованы(как пример Rust). То можно частично их декомпилить до исходников, и посмотреть структуры пакетов и их последовательность. Но тут надо быть хоть немного знакомым с c# и unity.  А в остальных случаях вам придется вооружиться IDA и WireShark и постигать дзен асемблера. А после этого еще и вручную написать эмулятор сервера. Но это требует довольно больших знаний, и огромных трудозатрат. А как я понимаю, у вас нет ни того, ни другого.
cnupmПостоялецwww29 мая 201716:51#2
Так там не ип а имя хоста наверняка зашито, если так - просто в hosts у себя его локально перебей на нужный и всё.
monobogdanПостоялецwww29 мая 201717:55#3
Думаете, проще просто взять и VPN туннель на манер Hamachi сделать?
А дальше дело за малым?
monobogdanПостоялецwww29 мая 201717:56#4
Greg0ry
NFSU2.
Нет, не в конфиге, скорее всего захардкожен.
А хоть как то, используя VMT получить оригинальные имена классов можно?

Правка: 29 мая 2017 17:57

monobogdanПостоялецwww29 мая 201718:22#5
Странно как я не заметил, но я нашел интересную библиотеку в папке с игрой - server.dll.
В таблице экспорта обнаружил несколько интересных функций:
StartServer
StopServer
IsServerRunning.
Сейчас в IDA Pro посмотрю аргументы этих функций, интересно будет попробовать хукнуть эту либу и добавить чего то своего.
Вопрос о VMT все еще поднят
endeavour_prПостоялецwww29 мая 201721:31#6
мне кажется ты не то реверсишь, в смысле не ту игру

Правка: 29 мая 2017 21:32

monobogdanПостоялецwww29 мая 201721:34#7
endeavour_pr
почему?
endeavour_prПостоялецwww29 мая 201722:43#8
Это старая игра про гонки на машинах ?
Есть игры современней и интересней.Кому вообще интересны гонки в онлайне, когда есть GTA  ?

Правка: 29 мая 2017 22:43

maks242Постоялецwww29 мая 201722:49#9
endeavour_pr
Зачем ломаешь парню его мечты?
monobogdanПостоялецwww29 мая 201722:51#10
endeavour_pr
там все отностиельно просто
endeavour_prПостоялецwww29 мая 201723:46#11
Ну хз, я просто не понимаю зачем тратить время на игры которые никому не нужны, ладно если мод для сингла тогда понятно ностальгия и все такое, но зачем делать онлайн когда есть куча новых и игр с онлайном, даже пиратским.
Кстати сейчас почему-то даже в гта 5 мало кто играет в гонки.
Мне не понятны цели которые ты преследуешь.
monobogdanПостоялецwww29 мая 201723:52#12
endeavour_pr
> никому не нужны
серьезно?
То что для неё нет альтернативных мультиплееров, не значит что она никому не нужна. Её всё так же любят, но играют в неё мало людей.
Так что если подумать ты прав, но все же, NFS U2 не очень сложная по архитектуре, пореверсил локальный сервер, многое понял.
Для опыта сойдет.

Правка: 30 мая 2017 0:02

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

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