Меню

Сан андреас вселенной hd

Вселенные

Rockstar Games говорит, что они разделили серию Grand Theft Auto пока что на три различные вселенные. Эти вселенные полностью отделены друг от друга, то есть никакие персонажи или сюжетные линии ни в коем случае не имеют возможности перетечь из одной вселенной в другую. Тем не менее, между историями не было никаких противоречий, а в некоторых вселенных имеются одни и те же персонажи и места, что делает заявленную Rockstar систему неоднозначной.

2D-вселенная 3D-вселенная HD-вселенная
Поколение
GTA 1
Поколение
GTA 2
Поколение
GTA III
Поколение
GTA IV
Поколение
GTA V
  • GTA 1
  • GTA London 1969
  • GTA London 1961
  • GTA 2
  • GTA III
  • GTA Vice City
  • GTA San Andreas
  • GTA Advance*
  • GTA Liberty City Stories
  • GTA Vice City Stories
  • GTA IV
  • The Lost and Damned
  • The Ballad of Gay Tony
  • GTA Chinatown Wars
  • GTA V
  • GTA Online

GTA Advance — двухмерная игра, но является частью поколения GTA III и, таким образом, 3D-вселенной.

Вселенная может рассматриваться как совершенно отдельный «канон» мест, людей и событий, существующих в этой самой вселенной. Места, которые появляются в нескольких вселенных, всецело перестроены, а не просто обновлены. Предыдущая вселенная была как бы мифическая вселенная, никогда не существовавшая. Тем не менее, некоторые вещи существуют в нескольких вселенных, в том числе бренды компаний, транспортные средства, географические названия, оружие и знаменитостей в-серии (например, Лазло).

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

Сравнение поколений

Вселенные очень тесно связаны с поколениями, которые представляют собой логические группы игр, основанных исключительно на их номере (то есть GTA III открывает поколение GTA III). Может быть так, что вселенные содержат более одного поколения. 2D-вселенная включает в себя поколение GTA 1 и GTA 2 (которая является своей собственным отдельным поколением). В HD-вселенную входят поколения GTA IV и GTA V (последняя начинает своё собственное поколение).

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

В противоположность этому, игры одной и той же вселенной (но отдельных поколений) могут быть совершенно разными и почти никак не связанными в перспективе графического стиля и механики. Футуристическая GTA 2 отличается от протекающих в 1960-е годы игр GTA London.

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

Как пример — GTA IV и GTA V, проистекающие в одной и той же вселенной HD, дающей Rockstar возможность продолжать биографии некоторых персонажей или даже сюжеты в новой игре, однако Дэн Хаузер говорил, что таковое если и может быть представлено, то только скудно. GTA V — совершенно самостоятельная игра с отличающимися возможностями и очень разнящимся настроением — не является «GTA IV: Los Santos», вследствие чего не является и частью поколения GTA IV.

Дэн говорит, что никого из игр до GTA IV не будет в ней — переход к HD создал раскол в этой вымышленной вселенной, в изображении которой Си-Джей, Тони и другие представляются как мифические персонажи из ушедшего поколения. Но увидим ли мы истории из предыдущей игры, возобновляющиеся в этой? «Я думаю, что это может быть чересчур вычурным», — говорит Хаузер. «У Нико была история специфического вида, эту же мы пытаемся сделать отличающейся. Мы могли бы сослаться на вещи из того мира, но мы не хотим, чтобы это было как бы противоположностью иммиграционной истории — нам был нужен свежий взгляд на то, что значит быть преступником в этом мире гиперреалистичной Американы».

Исключения

Хотя вселенные разработаны быть полностью самостоятельными, ссылки на предыдущие вселенные время от времени всё же случались. Отсылки на прежние имена и наименования являются основными и наиболее распространёнными, но также есть и передача улиц или даже персонажей.

  • Разные передачи Head Radio существуют в 2D- и 3D-вселенных.
  • Эль-Бурро, латиноамериканский персонаж в игре Grand Theft Auto 1, возвратился в Grand Theft Auto III в качестве босса первого комплекта миссий по телефону. Оба толкования персонажа имеют невероятное внешнее сходство. Есть и другой персонаж, названный Эль-Бурро, в Grand Theft Auto: Chinatown Wars, хотя его внешность совершенно отличается от двух предыдущих.
  • Международный аэропорт имени Фрэнсиса — наименование аэропорта в обоих — и 3D, и HD — исполнениях Либерти-Сити.
  • Лазло Джонс — вымышленный персонаж ведущего ток-шоу из реальной жизни с одноимённым названием (озвучен сам собой) и Фернандо Мартинес, персона с латиноамериканского радио — чьи появления в голосовой форме осуществлялись в почти всех играх 3D- и HD-вселенных (к тому же, Лазло физически появляется в Grand Theft Auto V).
  • Grand Theft Auto V несколько раз ссылается на сюжет Grand Theft Auto: San Andreas. Обе карты оснащены контролируемым бандой тупиком под названием Гроув-стрит, который выглядит очень схоже друг с другом в двух своих вариациях. В GTA San Andreas улица находится под контролем дружественной игроку банды, Кенты с Гроув-стрит (знаковые по своим зелёным цветам), чей главный враг — банда Баллас (которые используют пурпурные цвета). В GTA V реинкарнация Баллас держит контроль над Гроув-стрит, в то время как использующая зелёное банда Кенты.
  • Группа Love Fist, Кент Пол, радиоведущие Лазло Джонс, Фернандо Мартинес, Джеймс Педэстон , Марвин Трилл, актёр Джек Ховитцер, каскадёр Джок Крэнли и основатель программы Эпселон Крис Формейдж появляются в GTA Vice City, GTA Vice City Stories и GTA San Andreas, что указывает на то, что они существуют лишь в 3D-вселенной. Тем не менее, несколько персонажей появляются и в HD-вселенной. Просто пример. Несколько ссылок на рок-бэнд Love Fist имеется в Grand Theft Auto V, в том числе и появление члена бэнда Вилли . Это может объясняться тем, что персонажи, торговые марки и личности, которые появляются в обоих вселенных, могут быть альтер-эго (то есть, Лазло поколения HD не может быть тем, кто появляется на радиостанциях « Болтун FM » или V-Rock, группа Love Fist никогда не встречала мужчину по имени Томми Версетти).
  • Несколько знаменитостей в-игре представлены на Вайнвудской «Аллее славы» — они могут или не могут быть альтер-эго образов кого-либо из прошлого поколения, а всего навсего пасхальными яйцами.

Источник

Хронология событий мира GTA

Сначала разберем как устроена вселенная Grand Theft Auto

Я думаю, каждому известно, что Rockstar поделили вселенные Grand Theft Auto на три части. Но мы попробуем объединить все вселенные и создать шкалу времени, но брать за приоритетную будем HD вселенную!

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

Отдельно я хотел бы рассказать о GTA 2. Игра довольно старая и поэтому многие молодые игроки считаю, что действия игры происходят в 2013 году, хотя сами даже не включали эту игру и постоянно ссылаются на Wiki. Вот так однозначно говорить нельзя, GTA 2 происходит либо в параллельной вселенной (2013 год), либо примерно 2100 году в недалеком будущем после последней части GTA. Доказательства? Ниже я представлю арты мира GTA 2.

Читайте также:  Для чего возникла вселенная

Отличные арты автомобилей GTA 2, можно посмотреть на САЙТЕ ALEX TSEKOT

Ещё больше информации вы сможете увидеть в моем видео, там я добавляю некоторые моменты и даты связанные со вселенной Grand Theft Auto.

Все материалы принадлежат GameEngineer, вы всегда сможете меня найти:

Найдены дубликаты

Столько странностей! Нико Белик участвовал в войне на балканах в 15 лет?

Розыгрыш GTA III, GTA Vice City и Cities: Skylines

Окончание 17 июня в 9:00 по Москве

Потрачено.

Некстген для GTA5

Сегодня «Rockstar Games» (создатели серии игр GTA и RDR) сообщили про выход улучшенной версии GTA V для консолей нового поколения(PlayStation 5 и Xbox Series X|S).

Расширенная и улучшенная версия выйдет 11 ноября этого года.

Всё-таки мемы про GTA 5 были правы.

P.S. Картинка была на пикабу

Джонни Синс попросил Rockstar побыстрее выпустить GTA VI

Как дела, Rockstar Games? Это ваш любимый доктор, юрист, учитель, сантехник, астронавт и геймер, Джонни Синс. Мы все любим GTA V, но мы давно ждём GTA VI. Ну же, Rockstar Games, дайте уже нам игру, которую мы терпеливо ждали.

Ничего не предвещало беды

Мне приснилось что я стал стариком

Ah shit, here we go again

Выгодное предложение

Старый еврей продает на базаре арбузы под табличкой «Один арбуз — 3 рубля. Три арбуза — 10 рублей». — Вот так всегда: берут по три арбуза вместо одного, а потом учат меня коммерции.

GTA Vice City VHS Edition финальная версия

Большая сборка модов допиливающая за хорошими рокстарами их игру

Уже создавал на пикабу пост, создам еще. Допилил сборочку, что нового:

— 13 новых дополнительных заданий в виде пикапов пейджера разбросанных по карте.

— В Отеле Оушен Драйв продается карта 100% прохождения игры, на ней отмечены скрытые пакеты, уникальные прыжки и всё остальное что нужно для стопроцентного прохождения(в том числе пейджеры), а также список что для этого надо сделать.

— Новая радиостанция Vice City FM (заменяет пользовательское радио).

— Решейд ВХС шейдер

— Где-то 130 штук нового транспорта в стиле игры (без замены старого, то есть тачек теперь не сто, а двести). Некоторые автомобили уникальны (можно только на карте припаркованные найти или разблокировать)

— Штук 20 нового оружия(тоже без замены старого) (бо́льшая часть в аммунациях продается, остальные можно только на карте найти или разблокировать)

— Новая одежда(тоже без замены)

— Пофикшены и улучшены миссии, больше врагов, добавлены условия типа сделать что-то и разблокируется то-то(будет в начале миссии окно всплывать с информацией), например на миссии Rub Out можно переднюю входную дверь взорвать и так войти в особняк, на миссии Trojan Voodoo Томми и кубинцы переодеваются в одежду гаитян и после миссии стает доступна гаитянская одежда в которой гаитяне не трогают а кубинцы наоборот, и так далее)

— У банд разнообразное оружие, а не только пистолеты

— Classic Axis (пофикшены баги) — камера и прицеливание как в GTA SA

— Быстрый бег с двуручным оружием

— Ночь идет дольше

— Увеличен и пофикшен траффик, машины не исчезают при повороте камеры. Также траффик разнообразнее и живее

— Больше педов, и больше скинов у них

— Больше полицейских машин при розыске

— Дольше набивать звезды

— У врагов больше хп

— Враги не такие меткие

— Больше одного спавнится полицейских вертолетов на разных уровнях розыска

— Из убитых врагов иногда выпадают аптечки пополняющие 25хп

— Больше спавнится рыбок

— Project 2DFX — увеличенная дальность прорисовки огней города

— Медленная езда на ALT

— Real Traffic Fix — полная физика у машин педов

— VC.WheelTurningSpeedAdjuster.cs — пофикшена управляемость авто

— Водным планером легче управлять

— Спецэффекты из Xbox версии

— Пофикшены лоды зданий

— Можно закурить (на M)

— Тачка ГГ прочнее

— ГГ быстрее восстанавливает стамину после спринта

— ГГ может бухать (и танцевать) в Малибу, или клубе Поул-Позишн

— Больше ночных неонов

— В костюме полицейского на миссиях Vigilante копы не трогают

— По городу ездит инкассаторка, если ее взорвать с нее выпадет 10к и дадут 4 звезды розыска

— Гробовозка выпускает взрывающиеся гробы(на гудок)(тоже иногда спавнится в траффике) как на миссии Two Bit Hit.

— Рабочий автомат с газировкой в Кауфман Кэбс

— Больше вариантов закатов(два красивых заката из ВСС)

— Больше объектов на карте, растительности

— Больше припаркованных автомобилей

— Новый сейвхаус(рядом с доками там где дом у Виктора Венса в ВСС)

— Больше музыки на радио

— Новая банда Триада(ошивается в порту и появляется на миссии Spilling the Beans)

— На 5 звезде не только FBI приезжает но и копы и SWAT, на шестой все службы

— Можно взорвать танк

— Спецназовцы могут юзать дымовые шашки и дробовики, полиция нравов питон, армейцы огнеметы

— На R можно перезаряжать оружие

— Если у педов мало ХП они будут истекать кровью

— При прицеливании чувствительность мыши уменьшается

— После окончания миссии экспорта в Саншайн Аутос открывается гараж экспорта в Доках

— Новая хэдшот система (с любого оружия выстрел в голову становится фатальным). Большое спасибо SpitFire за это.

— Стало легче сбить полицейский вертолет.

— Рабочая автомойка, на карте отмечена, чинит авто и колеса пуленепробиваемыми делает

— Седьмая звезда розыска

— И много много прочих фиксов и другой фигни

— Если у вас мало фпс, в настройках видеокарты для игры включите 16x анизотропную фильтрацию текстур и все остальные настройки на высокую производительность

— В архиве есть архив с полной русской озвучкой от «GTA: Правильный перевод» и озвучка Кудос

— Разрешение экрана меняется в папке игры в файле GTAVC.WidescreenFix.ini

— Если окно игры не запускается, а игра просто висит в процессе, то вырубите процесс и снова запустите. Или если все равно не запускается, откройте GTAVC.WidescreenFix.ini и впишите свое разрешение (не все разрешения игра поддерживает)

— Сборка проходима на 100%, но лучше почаще сохраняться

Я настоятельно не рекомендую использовать какие либо дополнительные моды поверх сборки(в том числе мод на автосохранение) и удалять или изменять что-то в файлах сборки.

Ссылки на скачивание:

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

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

Энтузиаст предоставил развернутый анализ проблемы и методы её решения. Вкратце, замедление было вызвано «узким местом в одном потоке ЦП при запуске GTA Online». По оценкам tostercx, крупная команда разработчиков смогла бы решить проблему в течение суток после обнаружения.

К чести Rockstar, компания публично признала выводы tostercx и пообещала выпустить исправление в ближайшем патче: «После тщательного расследования мы можем подтвердить, что игрок t0st действительно раскрыл аспект кода игры, связанный со временем загрузки ПК-версии GTA Online, который можно улучшить. На основе этих исследований мы разработали некоторые изменения, которые будут внесены в предстоящее обновление игры».

Читайте также:  Вселенная общение с ней

Помимо удовлетворения от проделанной работы, tostercx получил солидное вознаграждение в размере 10 тысяч долларов США в рамках программы Bug Bounty. Обычно программа предусматривает выплаты за обнаружение проблем с безопасностью или конфиденциальностью в онлайн-играх Rockstar, но компания решила назначить награду «в качестве исключения», рассказал tostercx.

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

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

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

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

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

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

t0st также сообщил, что он «получил награду в размере 10 тысяч долларов» в рамках программы Rockstar по поиску багов, которая обычно используется только для устранения серьезных проблем с безопасностью.

Как я сократил время загрузки 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% игроков. Прошло уже семь лет!

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Он что-то парсит. Но что? Логический разбор займёт целую вечность, поэтому я решил сбросить некоторые образцы из запущенного процесса с помощью 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»]
>,
.

Что это? Судя по некоторым ссылкам, это данные для «сетевого торгового каталога». Предполагаю, он содержит список всех возможных предметов и обновлений, которые вы можете купить в GTA Online.

Читайте также:  Расширяющаяся вселенная интересные факты

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

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

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

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

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

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

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

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

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

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

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

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

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

* «закэшировать» начало и длину

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

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

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

Полный исходный код 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, то проблему можно решить в течение нескольких часов силами одного разработчика. Пожалуйста, ребята, сделайте что-нибудь с этим : Показать полностью 9

«Сан-Андреас» по-ульяновски

В 18:02 на телефон региональной Госавтоинспекции поступил звонок от очевидцев с сообщением о неадекватном поведении водителя одного из автомобилей на дороге в Новом городе. По указанному адресу прибыли сотрудник ДПС.

«На законные требования автоинспекторов женщина за рулём иномарки не реагировала и попытался скрыться. При поддержке Росгвардии сотрудники ГИБДД остановили машину марки «Киа» и задержали водителя. Местная жительница 1984 года рождения была доставлена в РОВД. От медицинского освидетельствования женщина отказалась. В связи с этим на неё составили протокол по части 1 статьи 12.26 КоАП. Также нарушительница будет привлечена к ответственности за неповиновение законным требованиям сотрудников полиции», — сообщил корреспонденту портала ulpravda.ru старший референт ОИОС УМВД России по Ульяновской области Сергей Сергеенко.

За пьяную езду (а отказ от медицинского освидетельствования приравнивается к этому) грозит штраф в размере 30 тысяч рублей и лишение права управления транспортным средством на срок от полутора до двух лет. За неповиновение законным требованиям сотрудников полиции гражданин может быть оштрафован на 500-1000 рублей или арестован на срок до 15 суток.

7 лет спустя

Диорама по GTA Vice City

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

Фигурку Томми Версетти и его мотороллер (Фаггио) вырезал из оставшихся после ремонта кусочков «Пеноплэкса». Основание и задник (офис Кена Розенберга) — из гофрокартона и плотной бумаги. Для подсветки использовал лампочки из старой новогодней гирлянды.

Список использованных материалов:

— экструдированный пенполистирол (Пеноплэкс);

— лампочки из новогодней гирлянды;

Новая жизнь для старушки GTA 3. RTX ON

В этому году исполняется 20 лет, не побоюсь этого слова, легендарной игре, основоположнице жанра беспредела в песочнице, GRAND THEFT AUTO III.
И вот, казалось бы, все в ней устарело — геймплей скучен до безобразия, графика даже на смартфонах смотрится убого, а сюжет. Ну, скажем так, сюжет просто есть. Надо же как-то оправдывать все безобразия которые придется совершать игроку во время прохождения миссий.

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

Год 2021й. Без слез уже на графику двадцатилетней давности не взглянешь. Вместо теней мутные текстуры с альфа-каналом натянутые поверх ландшафта. Вместо отражений — серые пятна, неохотно ворочающиеся по кузову автомобилей. А свет? Свет, как бы, есть, но он статичен настолько, что даже если на город упадет ядерная бомба, то заранее просчитанный прелайт никуда не денется.

Пора немного подтянуть картинку в игре чуть ближе к современным стандартам. И поможет в этом, небезызвестный в узких кругах, программист Петр Георгиевский. Своими волшебными пальцами и острым умом он добавил поддержку трассировки лучей в играх ГТА 3Д вселенной.

Я же, попытаюсь немного доработать стандартное окружение для того, чтобы конфета со вкусом лучей была упакована в красивую обертку. Немного поработаю с материалами, доработаю некоторые модели и текстуры и попытаюсь все это как-то подружить с RenderHook RT.

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

Жду ваших комментариев и обратной связи! Нравится ли вам как выглядит GTA 3 RTX? Стоит ли продолжать этим заниматься? Есть ли тут люди влюбленные в атмосферу Города Свободы?

Источник

Adblock
detector