Привет, поняши! Сообщаю вам о гнусном акте вандализма, совершенном в отношении меня Володькой и Шарлем. Старого и больного свиномата держали в сыром подвале прикованным наручниками к ржавой батарее, применяли физическую силу и подвергали психологической травле несколько суток. Также ограничили доступ к порнхабу и тиктоку, где я регулярно выкладывал свои занятия по тверку под немецкий рэп. Из рациона при этом исключили любимые мной брюкву и боярышник. Душа поэта не вынесла издевательств, и мне пришлось выполнить требования террористов - опубликовать этот псто в коммуне, хотя хотел ограничиться только собственной жыжей. Назло террористам-охальникам голымсувания и кодэпэвэ нибудит. В каментах можно высказать, какая я мразь, а также получить любые поньсультации по сабжу.
Пролог Очень многобукоф о мотивации аффтара [Открыть]После нашумевшей майской раздачи GTA в EGS мы с другом колей решили ознакомиться с актуальным онлайн-поньтентом, предлагаемым рокстарами. Лично у меня надежд на онлайн никаких особо не было, ибо еще во время релиза игры на пекарнях я не нашел там для себя ровным счетом нихуяшеньки. Данный факт, конечно, изрядно диссонировал с очень приятными впечатлениями, которые оставило прохождение сингла - насыщенного неплохим 3-дэ экшоном и хорошо срежиссированного приключения трех архетипичных преступных персонажей: тупого и феерически унылого гангста-ниггу Франклина, страдальца от семейных дрязг и по совместительству богача Майка и пизданутого на всю башку, но чертовски харизматичного колхозника Тревора. Но шанс GTA Online был даден, ведь уже пять лет прошло, а я попытался с чистого листа взглянуть на эволюцию самой коммерчески успешной игры в истории. Первое, от чего пришлось охуеть окончательно и бесповоротно - это длительность загрузки. Присоединения и переприсоединения к онлайн-сессиям будут занимать не меньше четверти времени, в течение которого игра была запущена. Я просто отказываюсь понять, чему там грузиться столько времени, если все, абсолютно все расчеты ведутся на клиенте, а сервер получает только данные об изменении состояния двух десятков игроков. Это настолько инфернальный сетевой быдло-кодинг, что комменировать тут попросту нечего. Не сказать, что в в момент релиза было как-то иначе, но с тех пор сей прискорбный факт подзабылся. А теперь вот подвспомнился. Персонаж мой с былых времен сохранился, но вот с аккаунта спиздили игровое бабло, которое выдавалось за предзаказ игры. Таким образом, начать мне пришлось с голой жопой, в отличие от друга коли, которому от EGS на халяву достались и деньги, и куча недвижимости, и некоторое количество техники. Поскольку прокачан перс не был, я принял решение создать нового, чё уж мелочиться-то? После просмотра кучи заставок, которые нельзя скипнуть, и злоебучего обучения, скип которого запрещает доступ к социальному поньтенту (читай - об игре с другом колей можно забыть), мобильник перса начал разрываться от непрекращающихся звонков разномастных пидарасов и проституток, настойчиво предлагавших купить офис, бункер, ночной клуб, квартиру и прочие акции МММ. Как впоследствии выяснилось, данный трезвон отключить принципиально, блять, невозможно. А ведь входящий звонок это не только раздражающая тирада какого-то мудака, которую ты уже триста раз прослушал, но и, например, сброс прицела во время перестрелки. Во время боя ты теряешь возможность продолжать вести огонь, пока не скинешь этот блядский звонок. Во время перестрелки, Карл! Вот так петухи из рокстаров умудрились одной ебучей механикой обеспечить невозможность противостоять агрессивному спаму в отдельно взятой за жопу игре. Я не помню ни одного проекта, а я повидал их немало, где игроку так открыто, нагло и бесцеремонно ссут в лицо. Даже ИРЛ у гражданина больше возможностей анально огородиться от спама. Но наш русский человек привык терпеть хамство и произвол власть имущих, посему изощренная самоэкзекуция была продолжена с абсолютной беспощадностью по отношению к себе. На одном из загрузочных экранов красовались условия очередного аттракциона неслыханной щедрости: все пистолеты в оружейных магазинах продаются бесплатно. Атлична, атлична, например! Как раз хотелось сравнить предлагаемый ассортимент без лишних трат, весьма чувствительных для голожопого персонажа. Приобрел я их, разумеется, почти все, и после низкобюджетной, но жаркой бойни в центре города рядом с мясной закусочной «Толстожопая Бэтти» сделал для себя вполне очевидные выводы: самым полезными качествами для пистолета являются точность, размер магазина и скорость перезарядки оного. Чсх, этими качествами обладает обычный пистолет, который выдается каждому персонажу при старте игры. Ну что ж, теперь надо избавиться от оружейного балласта, ибо каждый раз прокручивать весь список - удовольствие сомнительное. Попробовав безрезультатно то да сё, полез в интернеты за сакральной мудростью. И что бы вы подумали, мои дорогие котяточки? В игре не предусмотрена механика продажи/избавления от уже приобретенного оружия. Типа есть оружейный шкаф, но там можно спрятать далеко не все оружие, да и скрыто оно будет только в открытой сессии, но в ограблениях снова вылезет как чертик из табакерки. Покупка в игре оружия является необратимым действием, результаты которого значительно ухудшают качество жизни игрока, потому что надо все эти горы говна проматывать каждый ебаный раз. Проблема существует с момента релиза, и поцоны ноют о ней с него же. Снова рокстары обоссали мне лицо. В жалкой попытке подфармить хоть немного денег с нуля я погуглил на предмет подходящих квестов с хорошей денежной наградой. Таковые нашлись сразу аж в количестве трех штук с наградой от 200к до 250к местных шекелей, что вкупе с ежемесячным бонусом в 500к за вход в игру позволило купить первую полноценную хату с доступом к ограблениям и офис моей молодой, динамично развивающейся транснациональной корпорации «Чахлый зяблик». В нагрузку к этим квестам выдали также уникальные неудаляемые говнопушки. Некоторые задания в качестве босса организации давали возможность фармить по 20-25к за 5-10 минут бодрых пострелушек из машинки, но выполнять их нон-стоп рокстары запретили, установив кд в 10 минут. Не приведи б-г эти подлые игроки будут заниматься чем-то недостаточно унылым! Очередная порция ссанины в лицо, потому что остальные способы офисного фарма по перегону тачек и доставке спецгрузов являются ультимативным говнищем с анальнейшим гриндом. Гриндом, который, к тому же, очень сложно делать в одиночку - для продажи всей партии большого склада из 111 ящиков требуется минимум три машины, а продавать это говно мелкими частями абсолютно невыгодно по время- и трудозатратам. Максимально усложнять соло-гринд в игре, где днем с огнем не сыщешь нормальных союзников в пати, могли только рокстары. Ох, да и ебись оно в три прогиба - возиться с этими спецгрузами: дизайн миссий что по сбору спецгрузов, что по продаже делали настоящие боевые пидарасы. Тут будут и тайминги, в которые нереально уложиться, и ебнутые поиски точки сброса по радару в телефоне, и развоз груза на мирном советском тракторе самолетике с двумя боевыми вертолетами на хвосте, когда от них не оторваться, и получасовой кулдаун для каждого склада. Я даю гарантию, что у любого игрока жопа будет в огне при попытке заниматься этим соло. Кроме того, все эти гениальные задания предполагалось делать только в открытой сессии с другими игроками, а они с вероятностью 100% пустят по пизде все твои гриндо-фармовые начинания самонаводящейся ракетой под зад, поэтому приходится очищать сессию от других игроков старинным методом приостановки на 10 секунд процесса игры через монитор ресурсов в диспетчере задач. С учетом длительности входа в открытую сессию часть понтента выгоднее отыгрывать в закрытой сессии, но просто так в нее не попасть - сначала нужно загрузить сюжетную часть, и только оттудова можно запустить закрытую сессию. Придумать параметры запуска экзешника для быстрого запуска нужного режима - ну вы понели. Абсолютно какая же поебень и с другими «бизнесами» в игре. Бесконечно невыгодное и крайне унылое дрочево, причем ни один из наебизнесов не работает без прямого участия игрока: постоянно нужно лично привозить сырьевое говно, а потом лично развозить продукционное говно. Некоторые наебизнесы даже при режиме 24/7 способны приносить лишь сущие копейки, а при игноре игроком оных следуют лишь ежесуточные (каждые 48 минут реального времени) убытки на содержание. То есть любой наебизнес в игре не функционирует самостоятельно и не приносит никакого пассивного дохода. Ни тебе менеджеров нанять, ни логистический отдел, ни водителей. И даже сисятую секретаршу пялить в офисе нельзя, ведь настоящие финансовые воротилы гордо дрочат у себя в кабинете на мультики про поней и ведьмочек. Секретаршу в офисе в расчет брать не приходится, ведь эта шалава сосать умеет только деньги по 300 баксов в игровые сутки, при этом крайне скверно выполняя свои обязанности. Гениально, рокстары! Бизнес так и работает жы: генеральный директор транспортной компании лично развозит все грузы. А еще однажды купленный бизнес или недвижимость продать никак нельзя. Купил, но не понравилось? Отправляешься нахуй, дружок-пирожок! Если же убрать из игры все это дебильное гриндодрочево, не останется ничего, окромя ограблений. Сделаны они неплохо, но требуют 4 человек в пати. А у меня только друг коля. Добирать рандомных идиотов - это 90% вероятности слива миссии на ровном месте из-за смерти одного из идиотов на его собственной гранате или критического повреждения упомянутыми идиотами движимого либо недвижимого имущества, сохранность которого необходима для успешного завершения задания. Нет бы разбить как-то этапы мисии для обеспечения возможности игры вдвоем, но зачем думать о трудностях игроков, если можно обоссать им лица? Но что там в свободной игре? Серия ГТА всегда славилась своими бодрыми перестрелками с копами и всякими курьезами, происходившими при погонях. После ввода бесчисленного количества имб из бронированной и вооруженной до зубов техники от джипов с миниганами до танков с рельсовыми орудиями копы со своими пукалками превратились в натуральных мальчиков для битья. Игрока на технике с противопульным бронированием копы убить не могут принципиально, поскольку у них нет никакого тяжелого вооружения - только пистолеты, автоматы и дробовики. С появлением после первого ограбления у игрока бронированного спорткара «Курума» любые противостояния с копами превращаются в фарс, ну а передвигаться на танке под пятью звездами можно ровно пока не надоест. При этом ни о каком продвинутом ИИ копов при поиске и ликвидации игрока под звездами и речи нет - при погоне машины просто спавнятся на дорогах в радиусе от игрока, а пихоты тупо давят мясом со всех сторон. Карта сделана так, что в ней нет тупиков, поэтому у копов всегда есть возможность совершить обход с другой стороны, но на этом тактическая гибкость ИИ заканчивается. Да у них даже гранат и гранатометов нет для выкуривания игрока. Главная фишка серии ГТА с тем, что рано или поздно полиция тебя все равно запидарасит просрана рокстарами в высшей степени бездарно. Единственным вариантом столкновения с превоходящими силами противника является штурм базы ВВС, ибо там на 4 звезды появляются долгожданные тунки, на за пределами базы их не было и не будет. Отдельные лучи поноса хочется также направить в адрес высокоинтеллектуальных гейдизайнеров, добавивших в игру летающие мотоциклы и автомобили с самонаводящимися ракетами и тем самым пустивших по пизде последние остатки адекватного геймплея в открытых сессиях. Малолетние опрессороводы настолько заебали всех и в хвост, и в гриву, что для этих гейдизайнеров уже подготовлен отдельный котел в аду. Политика успешных разъеботчиков в отношении читеров не изменилась с момента релиза: банят непричастных, не трогают виновных. Самые отъявленные гнойные пидоры годами юзают свежие читы на основе dll-инжекций, превращая обстановку в открытых сессиях в блядский цирк, а перманентные баны получают обычные терпилы, которые неделями задротили на новую машинку или бункер. Про неотзывчивое консолеблядское управление персом в ебаном киселе, когда обычный разворот на месте в одной точке попросту невозможен даже и вспоминать не хочется, не говоря уже о пизданутой мехнике укрытий, придуманном под бутиратом функционале телефона и меню по клавише М, конфетках, восстанавливающих 10% хитпоинтов с пятисекундной анимацией. Ой, всё! После всего этого ада нестерпимое желание жэстачайшэ атадраць игру возникло столь быстро и решительно, что остановить себя я уже был не в силах. Каюсь. Об этом и содержательная часть псто. Не о покаянии, конечно, а о потрошении.
Будни потрошителя Типичная петербургская история о преступлении без наказания [Открыть]Первым делом, проанализировав используемый в читах идеологический подход при взломе через dll-инжекции, я пришел к достаточно очевидному выводу о выполнении практически всех вычислений непосредственно в клиенте с передачей серверу исключительно результатов этих вычислений. При этом необходимо было также поньстатировать почти полное отсутствие проверок содержимого транзакций на сервере. Таким образом, взлом через память должен в теории давать широчайшие возможности, ограниченные только способностью найти в этой самой памяти нужные адреса. Отличие же от функционала читов заключается в том, что читы используют вызов собственных игровых процедур и функций, а взлом через память требует работы непосредственно с адресным пространством. В качестве основновного инструмента для работы с адресным пространством использовался Cheat Engine, а в качестве вспомогательного при поиске указателей применялся x64dbg, что для достижения конечного результата совершенно не требовалось. Про CE - топовый в своем классе инструмент на сегодняший день - я обязательно запилю большой псто с обзором функционала для облегчения жизни простым сельским парням, ну а мое ОВМ по x64dbg нахуй никому не нужно в силу моих крайне поверхностных знаний о процессе отладки.
Главный принцип взлома любых игровых значений заключается в хорошем понимании игровых механик. В случае с GTA Online требовалось знание основных типов транзакций в игре для передачи данных на сервер. Было также ясно, что большинство значений, участвующих в транзакциях, может быть зашифрованным, поэтому нужно быть готовым не упустить подозрительные адреса. Первым приоритетом при поиске стал уровень персонажа, поскольку большинство ключевых апгрейдов для машинок и доступ к покупке тяжелого вооружения требуют 100+ лвл. Посмотреть количество набитого опыта можно было по клавише Z, поэтому я просто на дурака выполнил поиск по соответствующему значению, указав тип значения 4 байта целочисленный (равно как и для всех последующих результатов). Нашлась группа значений, среди которых я моментально нашел нужное. Моему удивлению не было предела, когда шкала опыта понеслась вверх со скоростью возбужденного бегемота, увидевшего под любимой пальмой свою обворожительную подружку в красном кружевном белье и с бутылочкой шампанского наперевес. Окрыленный быстрым и действительно неожиданным успехом, я решил все же сохранять достоверность транзакций на случай трепетного отношения античита к резким изменениям опыта, поэтому разовое приращение опыта было случайной величиной от 10к до 15к. Вспоследствии выяснилось, что античиту абсолютно похую на любые приращения опыта, и можно сразу было бахнуть 3кк. Единственным условием успешной фиксации сервером нового значения опыта является получение нового уровня при реальном игровом событии с начислением опыта. Наиболее простым методом я посчитал сбитие звезд розыска, за каждую из которых дают по 100 опыта. Таким образом, требовалось лишь оставить до нового уровня 100 очков опыта и сбить 1+ звезду.
Наметанный глаз и революционное чутье мне подсказывали, что после такого обосрамса ко всему остальному из игровых ништяков ключик рано или поздно найдется. Попытка аналогичным образом найти деньги на счету атакой в лоб успехом не завершилась, и я решил переключиться на боеприпасы как одну из бьющих по карману позиций в списке расходов. Во время неудачного поиска количества патронов непосредственно в магазине и в общем боезапасе обнаружился адрес, соответствующий сумме указанных значений. Бинго! Для каждого вида вооружения в памяти хранится в том числе и суммарный боезапас. Снова попробовал повозиться с деньгами путем продажи машинок в автомастерской. Сначала зарядил сумму продажи в 1кк для обычной машинки с базовой стоимостью продажи ~3к. Транзакция не прошла - работает какая-то проверка. Попробовал изменить стоимость ремонта на 0. Сработало! Цэ первый финансовый успех, хоть и сомнительных масштабов. Зарядил отрицательное значение в стоимость ремонта, но транзакция не прошла.
Решил поиграться со звездами розыска путем поиска неизвестного значения с последующим отсевом на уменьшение/увеличение. Нашлась целая группа адресов, которая стабильно получала ненулевые значения при появлении звезд розыска и не менее стабильно обнулялась при их сбросе. Попробовал заморозить нулевые значения по этим адресам. Бинго! На радостях минут пятнадцать мудохал случайных горожан и пляжных завсегдатаев. Впоследствии данный акт дружбомагии попал в криминальные сводки под наименованием «Лос-Сантосская резня бензопилой».
Вернулся к идее продавать машинки в автомастерской. В этот раз поставил цену продажи не 1кк, а всего лишь 50к при исходной цене продажи в 9к. Успех. Далее при помощи широко известного алгоритма поиска льва в пустыне определил максимально возможное для транзакции значение в 190к - уже очень недурное подспорье в обеспечении финансового благополучия, доступное один раз в игровые сутки (48 минут ИРЛ). Попробовал поискать здоровье персонажа. Обнаружилось подозрительное значение 1134821376 при полном здоровье (для 100+ уровня), уменьшавшееся при получении урона. Попробовал его заморозить. Бинго. По соседству (+1238h от адреса здоровья) обнаружился адрес брони с максимальным значением 1112014848. Заморозка обоих значений работала везде и обеспечивала выживаемость под любым обстрелом из обычных видов оружия. Взрывы и падения с большой высоты по-прежнему убивают. Сделал значение здоровья 2134821376. Теперь взрывы гранат и выстрелов РПГ не убивают, равно как и взрыв транспорта, в котором перс находится. Падения по-прежнему летальны. Нетрудно было догадаться, что данные значения из типа 4 байта целочисленное конвертируются в тип с плавающей точкой (float), превращаясь в 328 (здоровье) и 50 (броня).
upd.16.02.2021: смещение уже 1260h. Пошел испытывать госпожу Фортуну в казино. Поиск значения фишек в лоб ничего не дал. Игровые автоматы и скачки на понях сразу отпали как абсолютно непредсказуемые инструменты в плане выигрыша, а вот блекджек оказался значительно более перспективным вариантом. Поиск в лоб суммы очков на картах у крупье и у себя был безрезультатен, а вот значение принятой ставки найти и изменить удалось. Если подменить это значение на такое, которое бы обеспечило максимальный выигрыш в 2.5кк, транзакция будет успешной. При обычном выигрыше идет коэффициент 2, а при блекджеке (10 + туз) коэффициент уже 2.5. При этом в случае проигрыша нужно успеть подменить значение принятой ставки на минимальное, чтобы после двух проигранных раздач не был превышен лимит на проигрыш, и игрок не был выкинут из-за стола на игровые сутки (очередная «забота» об игроке, совмещенная с обоссыванием лица). Назначил в CE бинды на три варианта ставки: 10 (проигрыш), 1.25кк (обычная победа), 1кк (блекджек). После такой подготовительной работы катать можно бесконечно, главное - переписать значение ставки прожатием соответствующего хоткея до открытия всех карт крупье. Ну всё, тащемта, бабло можно грести лопатой по 2.5кк за раздачу пока не надоест, ставя на победу, когда набралось 20+ очков на картах.
Попробовал провернуть что-то похожее с рулеткой. Все получилось, причем там удалось даже найти и заморозить значение, которое выпадет на рулетке. Но блекджек менее уныл и там хоть что-то надо делать, поэтому с ним получается теплее и ламповее. Снова вернулся к идее продажи машинок в мастерской. В этот раз продавал не тачку с улицы, а приобретенный почти за 3кк спорткар. Зарядил 10кк. Успех. Предположил, что ограничение 190к на продажу было связано с низкой исходной стоимостью продаваемой уличной машины. В следующий раз зарядил 50кк. Победа. Опосля выставил 250кк. Триумф! Это окончательное решение еврейского денежного вопроса. Позже выяснилось, что условием для возможности продажи тачки за высокую цену (максимальная проверенная мной сумма составила 2ккк) является наличие трекера и страховки, так что подойдет любая тачка с улицы после покупки оных в мастерской. Долго не получалось подобраться к прокачке скиллов. В самой игре в лоб значения не отслеживались. Решил поколдовать со скиллами при создании персонажа. Сначала нашел пул свободных очков на распределение по различным скиллам (от 0 до 100). Дальше поискал значения по отдельным скиллам (также от 0 до 100). Оказалось, что все скиллы находятся в соседних ячейках. Заморозил их на 100 очках, а значение свободных очков заморозил на нуле. Сработало. На старте получился полностью прокаченный перс.
Обратил внимание на возможность разработок в бункере по апгрейдам оружия и техники. Попробовал ускорить процесс встроенным в CE спидхаком на значении кратности 20 в связке с принудительным завершением разработки за дополнительную плату. На все разработки ушло минут десять, не более.
В тире бункера легко и непринужденно было найдено значение очков, набиваемых в испытаниях - общее для всех видов оружия. Можно заморозить на 5к. При получении 2 звезд для всех типов оружия на +5 увеличивается общий запас гранат и мин, а вот 3 звезды открывают какие-то сраные кепки с футболками, так что можно дальше не проходить. При получении завершающей блок первой, второй или третьей звезды у меня игра вешалась намертво. Точнее, сама игра работала, но отваливалось управление. Для сохранения прогресса перед убийством процесса игры достаточно запустить принудительную синхронизацию по Alt+F4, но без потдверждения энтером. Попытка изменить общее количество ящиков спецгруза на большом складе увенчалась успехом, но вывезти все 111 ящиков можно только в три ходки, что по таймингу может заставить сильно попотеть, да и нахуя запариваться ради 2.2кк денег? Но показательно наличие даже таких мелких дыр. К слову говоря, есть лимит на вознаграждение за продажу спецгруза, если зарядить больше 111 ящиков, визуально все будет ок, и даже в статистике доходности офиса все обновится, но фактического зачисления денег на счет не произойдет. Так что тут только за номинал сдавать, а это меньше 1 раздачи на блекджеке в казино. Поковырялся немного с машинками, но сделать их бессмертными не получилось - нужно понимать, как они устроены с точки зрения игры. Возможно, там какая-то модульная структура с собственных хитпоинтами у каждого модуля. Может, еще что-то навроде необходимости поиска и корректировки процедуры нанесения урона машинке, а это уже ебически трудозатратно. Но данный пробел не является критичным, а в остальном уже достигнут максимальный уровень успешности взлома с мокрыми писечками без регистрации и смс. И, само собой, без бана. Мавр сделал свое дело, мавр может уйти.
Если вдруг захочется самостоятельно проверить, что там да как, предлагаю такой порядок: 1. Создать перса с максимальными скиллами. 2. Выставить опыт на значение 3кк. 3. В казино на блекджеке поднять 3кк денег. 4. Купить на сайте суперкар за 3кк и продать его в мастерской за 100кк. 5. Купить офис и бункер с передвижным командным пунктом. В открытой сессии без игроков перейти в режим шефа организации, в бункере активировать разработки апгрейдов. Пройти испытания тира. 6. Не проходить ебучие квесты на поиск сокровища, отлов дурачков для миссис М, поимку маньяка и прочую залупу с выдачей неудаляемого оружия. 7. Из оружия приобрести только Малый ПП с дисковым магазином (не путать Микро ПП!), Особый карабин с дисковым магазином, Тяжелую снайперскую винтовку. Позже в бункере проапгрейдить пистолет, особый карабин и снайперку до версий mk2. Из секции гранат (гранаты, мины-липучки, бесконтактные мины) и тяжелого вооружения (РПГ, ПЗРК и миниган) можно взять указанные позиции. Больше ничего не понадобится, а будет только мешать. Я гарантирую это. 6. Заполнить ящиками со спецгрузом один малый склад и продать всю партию. Заполнить и склад с оружием в бункере, воруя сырье для производства, а затем продать всю партию. Пройти авиашколу. Пройти парочку ограблений с рандомными раканами. В открытой сессии посбивать случайных мимокрокодилов с РПГ/ПЗРК. Ебнуть какого-нибудь бедолагу из орбитальной пушки. Осознать ТЛН и БЗСХДНСТ, царящие в онлайне. Удалить игру нахуй.
Эпилог Краткое, но емкое послесловие [Открыть]В игре с бюджетом 250 лямов и выручкой в 6 лярдов полностью отсутствует элементарная защита ключевых данных в адресном пространстве, именно поэтому читерство процветает буйным цветом все эти годы. С точки зрения клиент-серверной архитектуры в сессионной ММО - это полный и беспросветный пиздец. Такого себе не позволяют даже эталонные говнобраузерки. Несмотря на это, советую пройти сингл в ГТА - цэ действительно неплохая игра. Онлайн же сразу был мертворожденным из-за бездарности гейдизайнеров, авторов сетевого кода, интерфейсеров и издателей, которым я от всей души желаю рака яичек. С учетом воистину конских цен на донат и серьезного оборота реальных денег во всяких расплодившихся пабликах по прокачке аккаунтов, где хитрожопая школота наживается на школоте доверчивой, данная информация - всего лишь пятиминутка ненависти правды о реальном состоянии дел.