На нашем форуме вы можете получить приватный чит для игры Euro Truck Simulator 2. Подробности по ссылке ниже:
Тема с читом на Euro Truck Simulator 2

partoftheworlD

Пользователи+
  • Публикаций

    2 687
  • Зарегистрирован

  • Посещение

  • Победитель дней

    171

Весь контент partoftheworlD

  1. Можешь сохранить трейслог и открыв его в текстовом редакторе искать что нужно
  2. Это довольно не простая тема, поэтому в идеале необходимо знать ООП, так будет проще воспринимать устройство инвентаря. В фолаче 4-м вроде нет ячеек, это просто список указателей внутри массива. Если игра написана с использованием виртуальных методов, то для поиска предметов и инвентаря в целом можно использовать RTTI, если нет, придется делать все ручками. По RTTI есть статьи на форуме. А поиск руками, тут все достаточно нудно. Для начала инвентарь лучше забить предметами, которые скорее всего имеют общий родительский класс, ну например CWeapon, который содержит разные характеристики, которые CAK47 будет наследовать, но раз родитель общий, то и все остальные оружия, например CM16A3, тоже будут их наследовать. Получается, первый шаг это восстановить, хотя бы пару наследуемых значений например количество патрон и что-нибудь еще, чтобы в дальнейшем, можно было накладывать этот шаблон под разные указатели и проверять, является ли он каким-нибудь оружием. Из утилит подойдет ReClass, но в принципе хватит и CE. Второй шаг, найти указатель на структуру оружия, например базовый адрес 0xDEADBEEF, адрес патрон 0xE0. С этим справится обычный поиск, переводишь его в HEX вставляешь базовый адрес и ищешь. Получишь некое кол-во адресов. Каждый из которых нужно будет проверить, пока не найдешь, то что нужно. Третий шаг, проверяешь с помощью шаблона ближайшие адреса от найденных на втором шаге, чтобы восстановленное смещение в шаблоне на разных указателях указывало на патроны, а так же чтобы количество лежащих рядом указателей было таким же как и количество оружия/предметов в инвентаре. В упрощенном виде цепочка указателей выглядит примерно так: CWorld -> CLevel -> EntityArray[playerID] -> CActor -> CInventory -> CInventorySlot -> SlotArray[slotID] -> CWeapon -> ammo
  3. Посчитай на бумажке как формируется eax, смотря по инструкциям, которые были выше.
  4. Ищется так же как и любое другое значение в памяти. Не можешь найти скорость, значит ищи, то что можешь, например координаты, от них можно восстановить код и выйти на кусок кода работающий с расчетом координат, от него выходишь на дистанцию, от дистанции на скорость, от скорости на forward vector и т.д.
  5. Обычно это вектор единичной длины(если по простому - шаг проделываемый объектом), который используется для вычисления позиции за определенное количество времени и может принимать в себя разные параметры, типа ускорения, скорости и т.д.
  6. Это самые основы, которые даже есть в видео-уроках, а именно стек вызовов и многоуровневые указатели(ручной способ).
  7. Это и так самое простое, проще только идти в песочницу и лепить куличики.
  8. Сейчас нашлось свободных 10 минут, вот что нашел. В игре используется типичный switch/case, как первый вариант фильтрации просто использовать номера кейсов "если номер кейса равен n, то положить указатель в ...". Второй вариант продолжить искать инструкции формирующие указатель, он будет уровнем выше. И из-за этого раздули тему на целый десяток сообщений.
  9. Да очень просто, восстановлю алгоритм получения указателей и буду с помощью цикла получать только то, что мне нужно, а не перебирать все подряд и отсеивать с помощью исключений. Тем более поиск указателей не так уж и сложен, чем разбираться во внутреннем устройстве SEH.
  10. partoftheworlD

    Задачка по IDA и Python

    https://raw.githubusercontent.com/EiNSTeiN-/idapython/master/examples/ex_graph.py
  11. partoftheworlD

    Задачка по IDA и Python

    Подключение к питону происходит с помощью: import idc import idautils import idaapi У меня есть наработки некоторые, возможно что-то пригодится. В выводе получим Надо будет поправить пару строк, чтобы выводилась не функция целиком, а как при трассировке: for j in [i for i in self.range_reverse(current_function.endEA, current_function.startEA)]: Если нужно, вечером могу поискать, где-то был код для постройки графов.
  12. Деобфусцировал код игры и посмотрел какие значения принимает функция рисования этой полоски, а после поиском нашел значение (изменилось/не изменилось)
  13. Визуальное значение проходит через эту инструкцию, останется только зареверсить. F3 0F 11 6E 1C C6 46 24 01 48 8B C7
  14. Когда же люди научатся читать журналы изменений.
  15. смотришь в документации объявленный счетчик срабатываний брейкпоинтов( $breakpointcounter), выбираешь вкладку трассировка, выбираешь тип трассировки с заходом или без захода в вызовы, появляется окошечко и туда вписываешь любые условия, для остановки, если остановка случилась, то что необходимо сделать и т.д. Вот пример, трассировка начнется, если счетчик срабатываний инструкции будет больше 1000. Вот еще пример, дампера значений с инструкции, там про трассировку с условием более подробно и надеюсь понятно написано.
  16. Есть видео уроки, а так же книги , а так же документация, так что информации полно. Например, OALabs. Уроки и книги по крутым инструментам для отладки обычно у малварщиков, а как применить их, это уже дело фантазии, в случае чего, существует туева хуча уроков по ollydbg в том числе и на русском, если знаешь olly, то проблем с использованием x64dbg не будет. Интерфейс у них похожий, плюс есть поддержка различных языков, так что даже методом "тыка" можно разобраться за минут 30. CE представляет из себя комбаин из всего что только есть, но вот реализация не самая удачная и тут встает единственный вопрос, готов ли ты тратить на какое-то дело некое количество времени, чтобы написать костыли в CE, когда существует готовое решение, делающее то, что тебе нужно в один клик.
  17. Как вариант, не заниматься ерундой, а использовать специально заточенные для отладки инструменты. Например, в x64dbg этот счетчик остановок вынесет в отдельную переменную ($breakpointcounter) для доступа к ней, или Windbg. CE не подойдет для чего-то серьезного как ни крути.
  18. Создай отдельный аккаунт на Mega, чисто для трейнеров, там будет доступно 50гб и ссылки на файлы не полетят, пока аккаунт или файл не удалишь. Есть
  19. Вроде бы у CE не счетчика остановок, поэтому придется делать свой с помощью скрипта. cmp [debugCounter],#99 jne doSomething ... inc [debugCounter] jmp original_code doSomething: ... inc [debugCounter] jmp original_code
  20. Читать больно. А на счет трейнеров и их качества, условия использования не оговариваются, а значит трейнеры, таблицы и прочий софт, написанный разработчиками, распространяется "как есть" т.е. работоспособность не гарантируется вообще, так что при использовании трейнеров, таблиц и прочего софта пользователь использует все на свой страх и риск. Так что мне прямо удивительно видеть людей, которые требуют качества за бесплатно, так еще и возмущаются что, что-то не так работает или не работает совсем(не только ты, с того же пг полно подобного типа людей). Предлагаю закрыть и почистить топик, так как это достаточно глупое обсуждение.
  21. Для 10-15 людей, которые сидят на системе, которую уже 11 лет как не поддерживают? Может еще стоит указывать про то, что Windows 2000 и 98 тоже не поддерживается? Надеюсь это была шутка. Мне кажется, если используешь настолько устаревшую систему, то надо предполагать, что на ней мало что будет запускаться, тем более написанное в 2016 году.
  22. Подозрительно все это, трейнер основанный на сигнатурах не работает в более старой версии системы, а на новой работает.
  23. partoftheworlD

    TrainMe 1.10

    Он снимается как upx, достаточно поставить бряк на popad. Распакованная версия, но без зачистки сегментов ASPackа https://dropmefiles.com/pz7Lo