Пишем свой мультиплеер для игр серии GTA. Часть третья.
|
|
adamix | Дата: Суббота, 28.05.2011, 19:02 | Сообщение # 1 |
Постоялец
Группа:
Продвинутые
Сообщений: 376
Награды: 14
Город: Ульяновск
Репутация: 884
Замечания: 0%
Статус:
| Ухты... целых две небольшие части за день. В этой части вы увидите как легко можно использовать наследование(мы его используем для CLocalPlayer и CRemotePlayer), увидим как можно создавать тачки и модели игроков с полностью отвязанными данными. Для примера: если вы в классе CClientPed удалите любое добавление базы данных для удаленного игрока - он будет выполнять теже самые действия что и вы. Так же прыгать, бегать, и так далее. CRemoteDataStorage используется для сохранения данных игрока при контекст-свитчинге. В этой структуре можно много всего найти, а так же её можно изменять.
http://adamix.iv-m.com/mp-things_lesson_3.zip
Тысячи игроков SA-MP, как миллионы мух, конечно же не могут ошибаться. Законы математики, имеющие какое-либо отношение к реальному миру, ненадежны; а надежные математические законы не имеют отношения к реальному миру. © Альберт Эйнштейн.
|
|
|
|
ZiGGi | Дата: Суббота, 28.05.2011, 21:47 | Сообщение # 2 |
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
| чёт ненормально компилится:( Компилю VS 2008, в дебаге... ========== Build: 2 succeeded, 2 failed, 0 up-to-date, 0 skipped ==========
Error 3 error LNK2001: unresolved external symbol "void __cdecl MemSet(void *,int,unsigned int)" (?MemSet@@YAXPAXHI@Z) CMultiplayerSA.obj
Error 4 error LNK2001: unresolved external symbol "void __cdecl MemCpy(void *,void const *,unsigned int)" (?MemCpy@@YAXPAXPBXI@Z) CMultiplayerSA.obj
Error 5 fatal error LNK1120: 2 unresolved externals ..\..\output\MTA San Andreas\mta\multiplayer_sa.dll
Error 8 fatal error LNK1181: cannot open input file '..\multiplayer_sa\release\multiplayer_sa.lib' mp
Бложе [indent]Мой блог Уроки по Pawn[/indent]
Open-GTO [indent]Блог разработчиков GitHub: https://github.com/Open-GTO/Open-GTO Сборки мода с сервером тут[/indent]
|
|
|
|
adamix | Дата: Суббота, 28.05.2011, 22:12 | Сообщение # 3 |
Постоялец
Группа:
Продвинутые
Сообщений: 376
Награды: 14
Город: Ульяновск
Репутация: 884
Замечания: 0%
Статус:
| Как я уже писал во второй части - компилить надо в релизе.
Тысячи игроков SA-MP, как миллионы мух, конечно же не могут ошибаться. Законы математики, имеющие какое-либо отношение к реальному миру, ненадежны; а надежные математические законы не имеют отношения к реальному миру. © Альберт Эйнштейн.
|
|
|
|
ZiGGi | Дата: Суббота, 28.05.2011, 22:17 | Сообщение # 4 |
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус:
| Quote (adamix) Как я уже писал во второй части - компилить надо в релизе. упс, я его даже не увидел:(
Бложе [indent]Мой блог Уроки по Pawn[/indent]
Open-GTO [indent]Блог разработчиков GitHub: https://github.com/Open-GTO/Open-GTO Сборки мода с сервером тут[/indent]
|
|
|
|
IceCube | Дата: Суббота, 28.05.2011, 22:43 | Сообщение # 5 |
Советчик
Группа:
I'm V.I.P.
Сообщений: 1087
Награды: 11
Город: SRC
Репутация: 344
Замечания: 0%
Статус:
| adamix, обьясни пожалуйста различие между синхрой сампом и мта. Ну то есть почему одна лучше другой.
|
|
|
|
adamix | Дата: Суббота, 28.05.2011, 23:01 | Сообщение # 6 |
Постоялец
Группа:
Продвинутые
Сообщений: 376
Награды: 14
Город: Ульяновск
Репутация: 884
Замечания: 0%
Статус:
| Quote (IceCube) обьясни пожалуйста различие между синхрой сампом и мта. Разница в принципе работы. К тому же интерполятор там очень годный и переносимый. Когда то давно, когда я в первый раз пытался добавить интерполяцию в IV:MP - я просто скопипастил код из МТА. В итоге на основе МТАшного я написал свой код с нуля, который сейчас работает в IV:MP.
Тысячи игроков SA-MP, как миллионы мух, конечно же не могут ошибаться. Законы математики, имеющие какое-либо отношение к реальному миру, ненадежны; а надежные математические законы не имеют отношения к реальному миру. © Альберт Эйнштейн.
|
|
|
|
IceCube | Дата: Суббота, 28.05.2011, 23:13 | Сообщение # 7 |
Советчик
Группа:
I'm V.I.P.
Сообщений: 1087
Награды: 11
Город: SRC
Репутация: 344
Замечания: 0%
Статус:
| А что такое интерполятор?)
|
|
|
|
adamix | Дата: Суббота, 28.05.2011, 23:18 | Сообщение # 8 |
Постоялец
Группа:
Продвинутые
Сообщений: 376
Награды: 14
Город: Ульяновск
Репутация: 884
Замечания: 0%
Статус:
| Он сглаживает движение. Например транспорта. Если убрать интерполятор - тачки будут просто дергаться. Но при этом дергаться на правильные координаты. Просто не будет сглаживания.
Тысячи игроков SA-MP, как миллионы мух, конечно же не могут ошибаться. Законы математики, имеющие какое-либо отношение к реальному миру, ненадежны; а надежные математические законы не имеют отношения к реальному миру. © Альберт Эйнштейн.
|
|
|
|
MaLa | Дата: Среда, 03.08.2011, 13:20 | Сообщение # 9 |
Новенький
Группа:
Пользователи
Сообщений: 4
Награды: 0
Город: Москва
Репутация: 0
Замечания: 0%
Статус:
| adamix, три этих статьи очень хороши, но хотелось бы не только про GTA. Можешь объяснить в теории как вообще делать MP для любой другой игры? (про отловку оффсетов я знаю, и знаю что это не лёгкий процесс). Реально ли сделать MP на C#? С чего лучше начать?
Помог тебе? Не поленись! Поставь +!
|
|
|
|
SLICK | Дата: Среда, 18.01.2012, 20:44 | Сообщение # 10 |
Местный
Группа:
I'm V.I.P.
Сообщений: 603
Награды: 9
Город: Unknown
Репутация: 388
Замечания: 0%
Статус:
| Будут ли еще статьи? Хочется больше узнать)
My works: [GM] RTDM Advertising system Fuel System Artefacts Search (Динамическая сис-ма артефактов)
|
|
|
|
Winner_ | Дата: Воскресенье, 12.08.2012, 00:43 | Сообщение # 11 |
Новенький
Группа:
Пользователи
Сообщений: 2
Награды: 0
Город: Сергиев Посад
Репутация: 0
Замечания: 0%
Статус:
| Кто хочет принять участие в разработке мультиплеерного мода для GTA:SA просьба написать в скайп: login.deleted с пометкой "MP"
Developer
|
|
|
|