Для тех кому интересно, вопрос к ним. Какие критерии можно добавить спрашивая оценку плагина?
Например, по 5-ти бальной шкале спрашивать оценку у пользователей:
Необходимость плагина в Cheat Engine
Работает без ошибок
Понятно как пользоваться
Интерфейс плагина
Удобство плагина
Нравится
Простая установка
Думаю, прикрутить аналитику прямо в плагины. Там будет как аналитика использования плагина, та
Планируется улучшать и дорабатывать плагины, показать как с ними работать.
1. Вывод данных в окно логов: сканирование, подключение к процессу, опции сканирования, состояния активации и деактивации записией в таблице CE и другие
2. Запись действий из пункта 1, сохранение этих действий и воспроизведение по кнопке или горячим клавишам
3. Показ в дизассемблере CE ветвлений кода при проходе потоками разными цветами (можно видеть код, который не был пройден в разных ситуациях)
4. До
У меня бывают такие случаи, когда увидишь простой пример кода после которого захочется заняться разработкой какой-нибудь игры.
Вот один из таких примеров о том, как сделать подъем и опускание предмета и затем его вращение. Это 5 строчек "таких" и 5 строчек "таких", вот подъем и вращение
На видео код можно применять для левитации предметов и вражеских персонажей, которых можем поднимать, удерживать и бросать.
Отличная книга по изучению паттернов проектирования. Ее можно читать со шпаргалкой по паттернам (иллюстрацию по паттернам можно загуглить).
Перед этим еще загуглить SOLID + Unity .
До кучи еще алгоритмы и структуры данных.
Все это пригодится, чтобы пойти работать на программиста игр или приложений с разными типами реальности: дополненная, виртуальная и смешанная. А так же сейчас можно встретить вакансии по программированию не только Android, iOS устройств, шлемов и очков, но раз
Нет времени, пока напишу заметки.
1. Можно сделать плагин с визуализацией счетчиков обращений к видимым данным в MemoryView с подключенным DBVM.
2. По аналогии в Dessect Data Scanner сделать выбор DBVM режима.
DBVM позволяет обойти ограничение в 4 аппаратных брейкопинта и в реальном времени визуализировать данные, которые обращаются к памяти на чтение, запись. Показывать счетчик обращения и даже показывать спискок инструкций при наведении курсором на байт или иные да
Unity + ARKit 2.0 + Apple Device + iOS > 12.x позволят сканировать через визуальную одометрию реальный мир и расставлять в нем виртуальные объекты и загружать их в точные места, куда раньше поставили. Особенность в том, что чем больше информации собрали физической камерой из разных положений и углов, тем больше шансов, что увидим объекты именно там куда их поставили. Это еще классно тем, что карту мира можно расширять, сохранять, загружать, передавать в реальном времени на разные устройства
Вступление
В CE выделим участок кода и функцию
Sub eax,edx - вычитание и наиболее значимее чем запись и чтение.
После декомпиляции
Если выделили две инструкции
Обращать внимание будем на математику, логику, условия и потом на чтение и запись.
В данном случае, нужно найти вычитание из адреса "eax4->f1152 = eax4->f1152 - (eax3 + 1)"
Как поставить декомпилятор
1. С форума Cheat Engine качаем архив
2. Распаковыв
Пост для тех, кто интересуется Lua в Cheat Engine.
Можно подхватить разные моменты активации и деактивации записи в таблице CE и рассчитать размер кода между метками
1. По шаблону вставляем АА код для туториала Cheat Engine
2. Регистрируем метки-маркеры в АА коде
3. Этими метками в Lua считаем и выводим ""endCode - startCode" размер байтов
Пример, который подсчитал 15 байтов
Пример скрипта
Документация ко
Дополненная реальность похоже на спецэффекты в кино, только на экране видим изображение получаемое с видео камеры, которой управляет пользователь.
Что интересно. Камера, которая есть у многих на телефоне и допустим некоторая программа с API(какой-нибудь дополненной реальности написанная вами) определяет, что происходит на изображении и по этим данным можно
1) определить плоскости реальные в нашем мире
2) определить положение объектов относительно друг друга в нашем
Плагин ведет историю поиска, отсева, отмены. Логи выглядят следующим образом
Для чего может применятся
На шаге отсева посмотреть в логах, какое значение искали до этого и какой способ поиска использовали.
При неудачных поисках мы просматриваем как и что мы сканировали раньше.
Если вообще ничего не получается при сканировании, то логами можно обмениваться.
Горячие клавиши, которые настраиваются из окна настроек CE работают и в логах.
Установка: скоп
1. Открываем trainme Dark Byte.
2. Проходим первый шаг (там нужно сделать One Hit Kill чит через прогресс бар, количество патронов тоже интересно поломать)
3. Так вот на Step2 ищем адрес здоровья нашего космического корабля.
Ставим брейкпоинт на доступ, стреляем.
Видим, три адреса и вот теперь новые функции в контекстном меню как на скриншоте
На "(1)-(2)" - вызываем контекстное меню выделив адрес своего корабля и добавляем его в группу1. Тоже самое делаем д
Новые директивы try/except в AA доступны Cheat Engine 6.8 Beta2
Задача try/except в AA обработать исключение, не допустить crash. Чтобы игра продолжалась, а чит в лучшем случае не закрыл бы процесс.
В теории возможно определить, что был crash и что-то сделать. Например, отправить логи в свой или иной удаленный сервис аналитики, что такой-то чит не сработал...
Пример от DarkByte для try/except с счетчиком crashes
pcall() функция может вызывать функцию, которая может вызывать исключение.
Возвращает статус в виде булевой о том, есть ли исключение или нет и возвращает текст исключения.
Источник
Как этим пользоваться? Если вдруг знаем, что может произойти ошибка, то можно её обработать и выполнить правильное действие не останавливая работу Lua скрипта.
Или например если не выполняется условие, то можем сами создать ошибку с помощью функции error, что остановит скрипт.
1. WebSite-Watcher позволяет отслеживать изменения на веб-страницах в том числе по по регулярным выражениям. Можно отслеживать изменения на сайтах Cheat Engine и других. Форум отслеживать смысла особого нет. Проще подписаться на обновление и почтовый клиент поставить.
2. Программы тестирования и автоматизации под разные ОС:
Sikuli — открытая кросс-платформенная визуальная среда создания сценариев-скриптов
AirTest IDE — почти как Sikuli и более того, китайские разработчики
UserData в Lua это пользовательский тип. Точно не знаю, но я думаю в документации в CE Lua (celua.txt или здесь на офф. сайте) тип userData у всех классов или большинства классов. Например, проверим, что главная форма CE это userData тип
local mainFormCE = getMainForm()
print(type(mainFormCE))
> userdata (вывод из консоли)
Выводим список свойств следующим образом через getmetatable функцию. Метатаблица — это особая таблица свойств Lua-переменной (подробнее здесь)
local mainF
Довольно интересная функция, мне понравилась.
showSelectionList() позволяет просмотреть список класса Strings и выбрать свойство через список.
Как пример посмотрим список свойств главной формы и выберем любое свойство
local mainForm = getMainForm()
local listProperties = getPropertyList(mainForm)
local allowCustomInput = false
local id, name = showSelectionList("Title", "Caption", listProperties, allowCustomInput)
print ('Index: '..id..", Name: "..name)
--> Примеры выполне
В оригинале, если нет всех компонентов рецепта, то нельзя скрафтить вещь.
Цель: скрафтить без компонетов по нажатию кнопки
Игра на Unity и можно пробовать использовать в dnSpy модифицировать файл Assembly-CSharp.dll
Открываем файлик и смотрим на классы связанные с крафтом
Так находим кнопку, которая создаст указанное количество вещей крафта в CreateItem
Задача скрафтить по имеющемуся рецепту любую вещь. Для этого я добавляю проверку количес
В версии Unity 2018 довольно много интересного.
1. Это Unity Hub. Та штука, которая позволяет быть в курсе новых версий Unity.
2. PackageManager. Покажет пакаджи установленный в проекте.
3. Pro Builder. Довольно интересный инструмент, который позволяет моделить оркужение в Unity и творить простые локации, здания и создавать примитивы с наложением текстур... там очень много чего, я не не смотрел особо. Это альтернатива террейну. Фишка в том, что мы не являясь художниками (2
Почти месяц ковыряюсь со сборкой апк, которая не запускается на инструментальном тестировании в Firebase
Рис.1 Сборка апк на инструментальное тестирование TestLab от Firebase. Окно AirTest IDE
Две апк-шки создается.
1. В Unity, с иvпортом Poco SDK
2. В Плагине как на рисунке
Затем обе апк-шки отправляются на инструметальное тестирование в Firebase
Запускаю тест. Шесть секунд видео со стандартной заставкой и конец теста.
Была задача получить два списка из документа, в котором было с пару десятков тысяч строк. На практике выяснилось, что искать текст после ключевого слова легче чем искать текст до ключевого слова. Об этом и будет дальше
В утилите, которую я делал "Lua Regular Expressions (v. 1.0)"
Текст во вкладке "gmatch"
Game1
gameCompany
DAU
53.21k
-20%
Game2
gameCompany
DAU
20.35k
-20%
Поиск элемента после строки
"DAU "DAU%
Долго не могу решить проблему
Traceback (most recent call last):
File "C:\air test\plugins\firebase\build.py", line 124, in run
self.SIGNAL_INSERT_LOGVIEW.emit(_str.decode("GB2312").encode("utf-8"))
UnicodeDecodeError: 'gb2312' codec can't decode bytes in position 11-12: illegal multibyte sequence
QObject::~QObject: Timers cannot be stopped from another thread
Если кто шарит на питоне просьба помочь. Питон 2.7
Основная строка
self.SIGNAL_INSERT_LOGVIEW.emit(_str.deco
Уже была запись про тестирование производительности.
В этом примере тестируем разное обращение к функции со средним арифметическим значением
Результаты при 4-х запусках
avg = 0.93333998758048
avg = 1.0322099291325
avg = 0.92657961891689
avg = 1.1883763135947
Вывод. Разница не существенная.