Сколько можно иметь машин в гта 5 онлайн

Обновлено: 05.07.2024

GTA Online — Доставка редкого экспортного транспорта

В истории серии Grand Theft Auto доставка автомобилей в доки является самой настоящей классикой. В этом и заключается один из главных принципов игры — угнать автомобиль. Хорошо, что разработчики не забывают про угоны и дают возможность заработать на нелегальном бизнесе. Причём из серии в серию меняются условия доставки: где-то нужно доставить любую машину, а в другой части нужно собирать машины по списку и сдавать в доках.

GTA Online можно назвать по-настоящему автоманьячной игрой современности. Ведь вы можете просто угонять машины с улиц, продавая их в ближайшей автомастерской, а может, поищите машину для Симона Етаряна. А ещё можно заняться угоном машин для клиентов, используя транспортный склад.

То чувство, когда собрал все машины за день и получил редкую награду GTA Online

Начиная с обновления «Тюнеры в Лос-Сантосе» Rockstar Games добавили новые задания по доставке редкого экспортного транспорта (Exotic Exports). Но это будет времязатратным событием в мультиплеере. Готовьтесь к тому, чтобы потратить несколько часов на сбор ежедневного списка редкого экспортного транспорта.

Обновление списка происходит каждый день с 10:00 по московскому времени.

Награды для угонщиков

Усердным доставщикам редких машин положены внутриигровые награды. Посмотреть прогресс их выполнения можно в специальном разделе: ESC → Статистика → Награды → Тюнеры в Лос-Сантосе.

Награда: Доставщик машин


Награда: «Доставщик машин»
Выдаётся за 10, 25, 50 и 100 доставленных машин в доки.

Доставщик машин — профи


Награда: «Доставщик машин — профи»
Выдаётся один раз за доставку 10 машин в сутки. Соберёте весь список за 24 часа, получите редкую внутриигровую награду.

ПериодичностьНаграды
Ежедневно• 1,000 очков репутации
• 20,000 GTA$ за 1 машину
• 100,000GTA$ за 10 машин в сутки
Единовременно• 800 очков репутации
• 120,000$
• Вы получите этот бонус один раз, если соберёте 10 машин в сутки.

Как собирать редкий экспортный транспорт?

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

После того, как завершите заказ, то с вами свяжется Сессанта и скажет заглянуть на второй этаж автомастерской. Там вы увидите список требуемого транспорта, который можно поближе рассмотреть, нажав на кнопку «E» (русская У).


Отправляйтесь на улицы Лос-Сантоса и приступайте к поиску нужных машин. Они расположены в 99 случайных точках. Посмотрите на карту редких экспортируемых машин, чтобы запомнить расположение точек. Как только вы подъедете или подлетите к району припаркованной машины, то сначала мини-карта мигнёт белым цветом, а потом на карте появится голубая точка случайного события.

Место доставки редкого экспортируемого транспорта в доках Лос-Сантоса

Садитесь в нужную машину и везите её в доки Лос-Сантоса. Не бойтесь её поцарапать или сильно побить — автомобиль всё равно примут и погрузят в контейнер. В отличие от заданий по доставке Симону Етаряну — денежная премия не зависит от конечного состояния машины.

Доставив одну машину, езжайте за следующим автомобилем из списка. Раз за разом вы завершите список и получите положенные награды, но Rockstar не была бы Rockstar, если бы случайно или нарочно не вставила палки в колёса собирателей редких автомобилей.

Карта 99 точек появления редких машин

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

Карта 99 точек появления редкого экспортируемого транспорта в GTA Online


Обратите внимание на то, что разрешение карты составляет 8192 х 8192 пикселей и весом 30 Мб. Нажмите на картинку и оригинальная карта откроется в новом окне.

Выражаем благодарность GTAWeb.eu за интерактивную карту.

Важности для доставщиков редких машин

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

  • Перед сбором редких машин убедитесь в том, что у вас отображается задание «Авиагруз». М → Параметры отображения → Другое → Авиагруз → Показать.
  • Машины можно собирать в открытых, одиночных и закрытых сессиях для друзей или банды.
  • Не собирайте машины в пассивном режиме и не меняйте сессии. Есть вероятность того, что это событие может поломаться, и тогда вы не соберёте полную коллекцию редких авто за сутки.
  • Обновляемый раз в сутки список редких экспортируемых автомобилей одинаков для всех игроков GTA Online.
  • Случайные события свободного режима по доставке наркотиков или ограбления охранника с Кайо-Перико не влияют на появление машин, хотя они также отмечаются голубыми точками.
  • Если вы сдадите машину в доках, будучи партнёром или громилой преступной организации, то получите только GTA$, а машина зачтётся вашему шефу или боссу.
  • Выучите точки появления экспорта машин и составьте удобный маршрут.
  • Машина появляется на мини-карте только у того, кто её нашёл.
  • Находясь в экспортной машине и двигаясь в сторону доков, вы можете встретить ещё одну припаркованную экспортную машину — её точка не пропадёт после доставки текущей машины.

Послесловие

Это событие отлично подойдёт всем любителям заниматься собирательством и поиском внутриигровых предметов. Охотники за наградами также получат свой интерес, выбив редкие награды в GTA Online. Для остальных игроков совет один — если не готовы тратить много времени, то эти машины можно доставлять в случайном порядке. Увидели голубую точку — сели в машину и привезли в доки. А после переключитесь на другие активности — благо в мультиплеере их предостаточно.

Завершённый за сутки список редкого экспортируемого транспорта

Ответ на пост «Как я сократил время загрузки GTA Online на 70%»

Rockstar Games подтвердила PC Gamer, что фанатское решение проблемы долгого времени загрузки GTA Online станет официальным в грядущем обновлении.

В начале марта пользователь Github tostercx, также известный как t0st, заявил, что он обнаружил способ сократить время загрузки GTA Online до 70 процентов. Кроме того, он также выпустил исправление.

Rockstar подтвердила, что выводы tostercx были верными и что исправление уже в пути.

Последнее обновление для GTA Online вышло на всех основных платформах. На PlayStation обновление весит 700 МБ, на Xbox – 1 ГБ и на ПК – 400 МБ.

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


Доставка редкого экспортного транспорта


В обновлении «Тюнеры в Лос-Сантосе» разработчики вернули классическую доставку машин по списку как в GTA: Vice City. Для того чтобы заняться доставкой экзотических автомобилей в доки, вам необходимо купить автомастерскую и полностью выполнить любой заказ на доске (на втором этаже) от Сессанты и Кенни. После этого у вас откроется доска для доставки редкого транспорта.

Полезная информация

• Список ежедневно обновляется в 12:00 по московскому времени.
• Для облегчения поиска машин воспользуйтесь интерактивной картой с активным слоем «Exotic Exports».
• Выучите точки появления экспорта машин.
• Машины отображаются маленькими синими точками.
• Собирайте машины в закрытой сессии для друзей.
• Перед сбором машин убедитесь в том, что у вас показывается задание «Авиагруз». М → Параметры отображения → Другое → Авиагруз → Показать.
• Для облегчения активации синей точки, пролетайте на вертолёте перед предполагаемыми точками появления машины.
• Случайные события свободного режима по доставке наркотиков или ограбления пьяницы с Кайо-Перико не влияют на появление машин, хотя они также отмечаются синими точками.
• Находясь в экспортной машине и двигаясь в сторону доков вы можете встретить ещё одну припаркованную экспортную машину — её точка не пропадёт после доставки текущей машины.
• Каждая экспортная машина приносит 20,000GTA$.

Как заработать редкое игровое достижение «Доставщик машин — профи»?

ME2B5U9_t.jpg

Собрать 10 машин за сутки трудно, но невозможно. Мне помогла карта. Я быстро запомнил почти все 100 точек появления машин, и раз за разом таскал их в доки на сдачу. На полную доставку ушло три часа, но перед этим было несколько дней, когда мне удавалось добыть только по 6-7 экспортных машин.

Главная сложность при сборе машин — активировать синие точки. Есть небольшая вероятность, что они появляются в зависимости от времени внутриигровых суток, но это неточно. В основном я летал на вертолёте шефа Havok — он быстрый и манёвренный. У меня был включён расширенный радар для того, чтобы быстрее заметить синюю точку экспортной машины.

Небольшое наблюдение — в момент появления синей точки радар моргнёт белым цветом. Если это произошло, значит появилась машина и её нужно найти.

А теперь о том, что вы получите, доставив 10 машин.

ME2B5U5_t.jpg

• Редкую награду «Доставщик машин — профи»
• 120,000GTA$

Стоят ли эти страдания ради такого вознаграждения? Думаю, что стоят. Во-первых, настоящие поклонники серии GTA могут окунуться в ностальгию и вспомнить, как они искали и привозили экспортные машины в гараж Sunshine Auto. Во-вторых, надо опробовать весь контент GTA Online. В-третьих, можете похвастаться своим достижением перед друзьями. Может быть это побудит их пойти по вашим стопам?!

Если возникли вопросы связанных с доставкой экспортных машин в GTA Online или хотите поделиться своими секретами быстрого поиска, пишите в этой теме.

«Ламеров надо обучать. Игроков уважать. Читеров мочить в сортире». © Kesha_F1

«Дураку закон не писан. Если писан, то не читан. Если читан, то не понят. Если понят, то не так». © Народное

P.S.: списки еще в трешке были. Стыдно столько задротить и не знать)

GTA III Soviet Cars Pack

Модест Матвеевич представлялся мне сейчас совсем в особом свете. Я был убежден, что стоило бы Модесту Матвеевичу появиться здесь и заорать на упыря: "Вы это прекратите, товарищ Выбегалло!" - как упырь немедленно бы прекратил.

Стругацкие «Понедельник начинается в субботу»

What can we say about this guy. The ancient Romans had a word for it: asshole.

Награды


Всё прекрасно работает. Бывают редкие проблемы с отображением, либо ты ещё недостаточно выучил точки появления машин. На карте может быть заспавлена только одна экспортная машина, а значит есть шанс, что она заспавнилась где-то в Палето Бэй или у лаборатории Humane Labs.

Повторюсь — сбор экспортных машин времязатратное мероприятие!

P.S. Я знаю про списки GTA 3 и они явно сделали отсылку на трёшку, так как близится 20-летие этой игры. Но лично мне ближе Вайс Сити и задания по доставке экспортных машин из этой части игры.

«Ламеров надо обучать. Игроков уважать. Читеров мочить в сортире». © Kesha_F1

«Дураку закон не писан. Если писан, то не читан. Если читан, то не понят. Если понят, то не так». © Народное

Rockstar реализует наработки пользователя в GTA Online по улучшению времени загрузки

В начале марта пользователь сервиса Github с ником tostercx, также известный как t0st, заявил о способе значительного сокращения времени загрузки GTA Online до 70 процентов. Кроме того, tostercx с единомышленниками выпустили неофициальный патч для версии GTA Online 2215/1.53, в котором исправили две ошибки игры и собственно сократили время загрузки систем.

Rockstar реализует наработки пользователя в GTA Online по улучшению времени загрузки Rockstar, GTA, GTA 5, GTA Online, Баг, Патч


Энтузиаст посчитал стоимость полной коллекции транспорта в GTA Online.

Энтузиаст посчитал стоимость полной коллекции транспорта в GTA Online. Игры, GTA 5, GTA Online, Интересное, 4PDA

Ну условно за 7-8 часов можно лям Без доната и не торопясь, если пати найти и соло сервер, то может и больше, но на все эти офисы, бункера и прочее нужно раскошелиться не один миллион, а их ещё для эффективности можно улучшить, или расширить или купить дабл дома, т. Е. Войти В игру и с нуля заработать не получиться. Хотя В гта онлайн почти нету особо чем заниматься кроме фарма (ну т. Е. Почти Все действия не учитывая свободной езды или пвп вне какого нибудь противоборства приносят деньги и уйти в минус будет сложно, а вот заработать копейки за какую-нибудь гонку всегда пожалуйста)

если фармить есть на чем и ты умеешь играть то накопить миллион за полтора часа не является проблемой

Ну типа пол часа это один груз + Ну 56 (-18), машину взять и продать, в районе 75 (100-20-поломка), если до этого в бункере поставить сырье На "работу" еще плюс Ну 30-40 В лучшем случае за час это 120-140, На остальном я не пытался подниматься, но мотоклуб точно не приносит большие деньги, новые клубы тоже вроде не мега прибыльный, и новый бункер и "бункер с самолетами", тоже не дико много приносит. Еще можно в гонках, На противоборствах Подниматься, тем летом был изи фарм На дартсе, Где Ты мог сидеть и смотреть сериал иногда тыкая В клаву чтобы не кикало с сервера

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

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

Пффф, микроскопическая сумма, по сравнению с картошкиной игрой, в которой маркетологи из WG пошли ещё дальше: хочешь собрать всю коллекцию танков в WOT , включая премы - заплати как за настоящий танк.

Там а онлайн то сейчас как? Читеры ещё не наигрались? После апдейта с ночными клубами, читеров прибавилось в разы имхо. Многие жаловались и раньше что их было полно, но сейчас просто капец в этом плане (на ПК) Так многие жаловались что их полно, а потом просто забили хуй на игру и жалобы прошли

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

Да лан мод. Как-то что-то залагало и я стал бессмертным. Интересные чувства, когда едет броневик, а ты через стекло в упор выцеливаешь голову водилы.

самое обидное, покупаешь лицензию, а там одни читаки бегают. и смысл вообще игру покупать?

Я в соло заканчиваю проходит заново , подготавливаюсь к RDR 2 Комментарий удален. Причина: данный аккаунт был удалён

как-то решил купить акк гта. 2,2 триллиона на счету за те же 250 рублей (начитили, видимо, и бросили играть, потому что скучно стало) :D

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

Это вы еще стоимость всех плюшек не считали в "Minion Rush" на андроид

363кк конечно много, но более чем реальная сумма если задаться целью.

А бабло за донат там всегда неадекватно стоило.


Как я сократил время загрузки GTA Online на 70%

GTA Online. Многопользовательская игра, печально известная медленной загрузкой. Недавно я вернулся, чтобы завершить несколько ограблений — и был потрясён, что она загружается настолько же медленно, как и в день своего выпуска, 7 лет назад.

Пришло время докопаться до сути.

Человек залез в "исходный код" игры, нашел криво работающую функцию и исправил ее, благодаря этому скорость загрузки возросла на 70%. Ссылки на dll для увеличения скорости в конце статьи.

Сначала я хотел проверить, вдруг кто-то уже решил проблему. Но нашёл только рассказы о великой сложности игры, из-за чего она так долго загружается, истории о том, что сетевая p2p-архитектура — мусор (хотя это не так), некоторые сложные способы загрузки в сюжетный режим, а потом в одиночную сессию, и ещё пару модов, чтобы скипнуть видео с логотипом R* во время загрузки. Ещё немного почитав форумы, я узнал, что можно сэкономить колоссальные 10-30 секунд, если использовать все эти способы вместе!

Тем временем на моём компе…

Загрузка сюжетного режима:

Без загрузочного меню, от логотипа R* до игрового процесса (без логина в Cоциальный Клуб.

Старый, но приличный проц: AMD FX-8350
Дешёвый SSD: KINGSTON SA400S37120G
Надо бы прикупить RAM: 2x Kingston 8192 MB (DDR3-1337) 99U5471
Нормальный GPU: NVIDIA GeForce GTX 1070

Я (не) одинок

Если доверять этому опросу, проблема достаточно широко распространена, чтобы слегка раздражать более 80% игроков. Прошло уже семь лет!

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Я немного поискал информацию о тех

20% счастливчиках, которые загружаются быстрее трёх минут, и нашёл несколько бенчмарков с топовыми игровыми ПК и временем загрузки онлайн-режима около двух минут. Я бы кого-нибудь убил хакнул за такой комп! Действительно похоже на железячную проблему, но что-то не складывается…

Почему у них сюжетный режим по-прежнему загружается около минуты? (кстати, при загрузке с M.2 NVMe не учитывались видео с логотипами). Кроме того, загрузка из сюжетного режима в онлайн занимает у них всего минуту, в то время как у меня около пяти. Я знаю, что их железо гораздо лучше, но не в пять же раз.

Высокоточные измерения

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

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Почти минута уходит на загрузку общих ресурсов, которые нужны и для сюжетного режима, и для онлайна (почти наравне с топовыми ПК), затем GTA в течение четырёх минут полностью нагружает одно ядро CPU, больше ничего не делая.

Использование диска? Нет! Использование сети? Есть немного, но через несколько секунд падает в основном до нуля (кроме загрузки вращающихся информационных баннеров). Использование GPU? Ноль. Память? Вообще ничего…

Что это, майнинг биткоинов или что-то такое? Чую здесь код. Очень плохой код.

Единственный поток

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

Что странно, так это способ использования CPU. Я ожидал огромное количество операций чтения с диска или массу сетевых запросов, чтобы организовать сеансы в сети p2p. Но такое? Вероятно, здесь какая-то ошибка.

Профилирование

Профилировщик — отличный способ найти узкие места в CPU. Есть только одна проблема — большинство из них полагаются на инструментирование исходного кода, чтобы получить идеальную картину происходящего в процессе. А у меня нет исходного кода. Мне также не требуются идеальные показания в микросекундах, у меня узкое место на 4 минуты.

Итак, добро пожаловать в образцы стека (stack sampling). Для приложений с закрытым исходным кодом есть только такой вариант. Сбросьте стек запущенного процесса и местоположение указателя текущей инструкции, чтобы построить дерево вызовов в заданные интервалы. Затем наложите их — и получите статистику о том, что происходит. Я знаю только один профилировщик, который может проделать это под Windows. И он не обновлялся уже более десяти лет. Это Люк Stackwalker! Кто-нибудь, пожалуйста, подарите Люку немножко любви :)

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Обычно Люк группировал бы одинаковые функции, но у меня нет отладочных символов, поэтому пришлось смотреть на соседние адреса, чтобы искать общие места. И что же мы видим? Не одно, а целых два узких места!

Вниз по кроличьей норе

Позаимствовав у моего друга совершенно законную копию стандартного дизассемблера (нет, я действительно не могу его себе позволить… когда-нибудь освою гидру), я пошёл разбирать GTA.

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

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

Похоже, здесь применили какую-то обфускацию/шифрование, заменив большинство инструкций тарабарщиной. Не волнуйтесь, нужно просто сбросить память игры, пока она выполняет ту часть, на которую мы хотим посмотреть. Инструкции должны быть деобфусцированы перед запуском тем или иным способом. У меня рядом лежал Process Dump, так что я взял его, но есть много других инструментов для подобных задач.

Проблема 1: это что… strlen?!

Дальнейший разбор дампа выявил один из адресов с некоей меткой strlen, которая откуда-то берётся! Спускаясь вниз по стеку вызовов, предыдущий адрес помечен как vscan_fn, и после этого метки заканчиваются, хотя я вполне уверен, что это sscanf.

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Он что-то парсит. Но что? Логический разбор займёт целую вечность, поэтому я решил сбросить некоторые образцы из запущенного процесса с помощью x64dbg. Через несколько шагов отладки выясняется, что это… JSON! Он парсит JSON. Колоссальные десять мегабайт JSON'а с записями 63 тыс. предметов.

.
"key": "WP_WCT_TINT_21_t2_v9_n2",
"price": 45000,
"statName": "CHAR_KIT_FM_PURCHASE20",
"storageType": "BITFIELD",
"bitShift": 7,
"bitSize": 1,
"category": ["CATEGORY_WEAPON_MOD"]
>,
.

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

10 мегабайт? В принципе, не так уж и много. Хотя sscanf используется не самым оптимальным образом, но, конечно, это не так уж плохо? Что ж…

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Да, такая процедура займёт некоторое время… Честно говоря, я понятия не имел, что большинство реализаций sscanf вызывают strlen, поэтому не могу винить разработчика, который написал это. Я бы предположил, что он просто сканировал байт за байтом и мог остановиться на NULL.

Проблема 2: давайте использовать хэш-…массив?

Оказывается, второго преступника вызывают сразу за первым. Даже в одной и той же конструкции if, как видно из этой уродливой декомпиляции:

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Все метки мои, и я понятия не имею, как на самом деле называются функции/параметры.

Вторая проблема? Сразу после разбора элемента он хранится в массиве (или встроенном списке C++? не уверен). Каждая запись выглядит примерно так:

А перед сохранением? Он проверяет весь массив, сравнивая хэш каждого элемента, есть он в списке или нет. С 63 тыс. записей это примерно (n^2+n)/2 = (63000^2+63000)/2 = 1984531500, если я не ошибаюсь в расчётах. И это в основном бесполезные проверки. У вас есть уникальные хэши, почему не использовать хэш-таблицу.

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Во время реверс-инжиниринга я назвал его hashmap, но это явно не_hashmap. И дальше ещё интереснее. Этот хэш-массив-список пуст перед загрузкой JSON. И все элементы в JSON уникальны! Им даже не нужно проверять, есть они в списке или нет! У них даже есть функция прямой вставки элементов! Просто используйте её! Серьёзно, ну ребята, что за фигня!?

Доказательство концепции

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

План такой. 1. Написать .dll, 2. внедрить её в GTA, 3. зацепить некоторые функции, 4. . 5. профит. Всё предельно просто.

Проблема с JSON нетривиальная, я не могу реально заменить их парсер. Более реалистичным кажется заменить sscanf на тот, который не зависит от strlen. Но есть ещё более простой способ.

* подождать длинной строки

* если поступит ещё вызов в пределах диапазона строки, вернуть закэшированное значение

Что-то вроде такого:

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

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

Как я сократил время загрузки GTA Online на 70% GTA 5, GTA Online, Benchmark, Расследование, Детектив, Реверс-Инжиниринг, Длиннопост

Полный исходный код PoC здесь.

Ну и как оно работает?

Прежнее время загрузки онлайн-режима: около 6м
Время с патчем проверки дубликатов: 4м 30с
Время с парсером JSON: 2м 50с
Время с двумя патчами вместе: 1м 50с

(6*60 - (1*60+50)) / (6*60) = 69.4% улучшение времени (класс!)

Да, чёрт возьми, получилось! :))

Скорее всего, это не решит всех проблем с загрузкой — в разных системах могут быть и другие узкие места, но это такая зияющая дыра, что я понятия не имею, как R* пропустила её за все эти годы.

Краткое содержание

При запуске GTA Online есть узкое место, связанное с однопоточным вычислением

Оказалось, GTA изо всех сил пытается распарсить 10-мегабайтный файл JSON

Сам парсер JSON плохо сделан/наивен и

После парсинга происходит медленная процедура удаления дублей

R*, пожалуйста, исправьте

Если информация каким-то образом дойдёт до инженеров Rockstar, то проблему можно решить в течение нескольких часов силами одного разработчика. Пожалуйста, ребята, сделайте что-нибудь с этим :<

Вы можете либо перейти на хэш-таблицу для удаления дублей, либо полностью пропустить дедупликацию при запуске как быстрое исправление. Для парсера JSON — просто замените библиотеку на более производительную. Не думаю, что есть более простой вариант.

* Получил подтверждение от R*, что это скоро исправится

* Только что получил награду в размере $10k через их внутриигровую награду H1 в качестве исключения :)) (обычно это делается, только по вопросам безопасности)

* Пытаюсь понять, что такое W8 (от ред. это форма налоговой службы США) и как его заполнить (лол)

* Я сделаю еще один тест, как только обновление выйдет, надеюсь их инженеры не разочаруют :)

Cуточный лимит на продажу личных автомобилей


Нам очень жаль, что Вы столкнулись с данной проблемой, но, к сожалению, мы не можем Вам помочь с вопросами о внутриигровом процессе. Возможно, Вы найдете нужную информацию по ссылке далее:

(тут написана ссылка на форум рокстар которую я удалил)

Приносим извинения за возможные неудобства.

Если у Вас возникнут какие-либо технические вопросы, пожалуйста, обращайтесь к нам.

Читайте также: