Перейти к содержанию
  • записи
    104
  • комментариев
    125
  • просмотров
    15 685

Записи в этом блоге

Unreal Engine 4.22. Как захотеть делать игры

У меня бывают такие случаи, когда увидишь простой пример кода после которого захочется заняться разработкой какой-нибудь игры.  Вот один из таких примеров о том, как сделать подъем и опускание предмета и затем его вращение. Это 5 строчек "таких" и 5 строчек "таких", вот подъем и вращение   На видео код можно применять для левитации предметов и вражеских персонажей, которых  можем поднимать, удерживать и бросать. 

MasterGH

MasterGH

Unity набирает обороты

В версии Unity 2018 довольно много интересного.   1. Это Unity Hub. Та штука, которая позволяет быть в курсе новых версий Unity.  2. PackageManager. Покажет пакаджи установленный в проекте. 3. Pro Builder. Довольно интересный инструмент, который позволяет моделить оркужение в Unity и творить простые локации, здания и создавать примитивы с наложением текстур... там очень много чего, я не не смотрел особо. Это альтернатива террейну. Фишка в том, что мы не являясь художниками (2

MasterGH

MasterGH

Unity + ML (Python)

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

MasterGH

MasterGH

Tool Lua Regular expressions 2

CT таблица для составления регулярных выражений 4-х функций   string.match (s, pattern [, init]) string.gmatch (s, pattern) string.gsub (s, pattern, repl [, n]) string.find (s, pattern [, init [, plain]]) Функция string.gsub может принимать в аргумент функции "repl" таблицу (тогда будет замена по ключам значений из таблицы ) или в аргумент "repl" может попадать некоторая другая функция с аргументом найденного слова (тогда будет вызов этой другой функции при каждом захвате символа или

MasterGH

MasterGH

Tool CE Lua Regular Expression

Установка: 1. Файл GHL_ClassSettings.lua закинуть в autorun (нужен для сохранения и загрузки данных формы) 2. Двойной клик на Lua Regular expression.CETRAINER вызовет это окно   Описание: - Для тренировки и проверки написания регулярных выражений - Выбор извлечения строк в виде одной или в виде последовательности - При нажатии на кнопку или при вводе текста в memo вычисляется выражение Lua Regular expression.CETRAINER GHL_ClassSettings.lua

MasterGH

MasterGH

Sikulix-скрипт сравнения изображений в играх

Вполне читерская программа Sikulix   Помощник для нахождения отличий   Исходник:   Картинки для тренировки   Игра Sikulix Документация Туториалы   Sikulix умеет: ждать появления или исчезновения элемента, просто ждать, периодически просматривать область в background (например игрового чата); читать (и писать) текст в(/из) поля ввода, "нажимать на клавиатуру", подсвечивать области, кликать по элементам, удерживат

MasterGH

MasterGH

Python ошибка

Долго не могу решить проблему 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

MasterGH

MasterGH

Notepad++ и CE Lua. Автозавершение строк

  Можно в редакторе сделать автозавершение инструкци для CE Lua и даже для CE Autoassembler.   Накидал пример, может быть, кому интересно будет для других языков. Установка. Поместить файл в директорию на скриншоте   lua.xml   Настройки

MasterGH

MasterGH

Lua. Сравнение времени выполнения двух функций

Пример1. Узнать во сколько раз string.match() медленее string.find()   Пример2. Создание лишней локальной переменной   Ответы: 1.38,  1.04.   Если значение меньше единицы, то оптимизированный код хуже. Если значение больше единицы, то стоит использовать более оптимизированный вариант.   Для простого поиска лучше использовать string.find чем string.match.     Еще несколько примеров   Для чего может пригодиться. Может пр

MasterGH

MasterGH

Lua счет произвиодительности

С точностью до тысячной доли секунды можно посчитать задержку выполнения кода, что можно применить как счет производительности. local x = os.clock() local s = 0 for i=1,100000 do s = s + i end print(string.format("elapsed time: %.3f\n", os.clock() - x)) После выполнения, показывает 2 тысячных секунды или 2 мс elapsed time: 0.002 Можно посчитать прошедшее время для другой цели. Например, если цикл в отладке выполняется более 3 секунд, то это вероятно корневой цикл, а если менее, то

MasterGH

MasterGH

Lua поиск элемента до и после строки

Была задача получить два списка из документа, в котором было с пару десятков тысяч строк. На практике выяснилось, что искать текст после ключевого слова легче чем искать текст до ключевого слова. Об этом и будет дальше   В утилите, которую я делал "Lua Regular Expressions (v. 1.0)"   Текст во вкладке "gmatch"   Game1 gameCompany DAU 53.21k -20% Game2 gameCompany DAU 20.35k -20%   Поиск элемента после строки   "DAU "DAU%

MasterGH

MasterGH

Lua плагины в CE

Нет времени, пока напишу заметки.   1. Можно сделать плагин с визуализацией счетчиков обращений к видимым данным в MemoryView с подключенным DBVM. 2. По аналогии в Dessect Data Scanner сделать выбор DBVM режима.   DBVM позволяет обойти ограничение в 4 аппаратных брейкопинта и в реальном времени визуализировать данные, которые обращаются к памяти на чтение, запись. Показывать счетчик обращения и даже показывать спискок инструкций при наведении курсором на байт или иные да

MasterGH

MasterGH

Lua ООП конспект

Пригодится для создания больших плагинов в Cheat Engine. Более ~500 строк   Наследование   Инкапсуляция   Полиморфизм   Спасибо автору за исходники.

MasterGH

MasterGH

Lua Regex Tester (Cheat Engine)

Используется UDF1.CELabel1.Caption = string.match(stringLine, stringPattern)   Для запуска нужна CE 6.4. string.match.CETRAINER

MasterGH

MasterGH

Lua Plugin CE Disassembler

Обновление плагина   Установка с репозитория: ссылка     Кратко 1. Добавил сохранение/загрузку параметров. Хранение в текстовом файле в папке autoruns 2. Добавил настройки графического интерфейса (слайдеры, пункт меню) Подбронее  

MasterGH

MasterGH

FPU инструкция FINCSTP. Очистка ST(0)

FINCSTP     Похожа на FSTP, также вращает стек регистров FPU (я кстати не знал, увидел при тестах в CE), но только не перемещает значение по адресу.   FSTP [здесь указывается адрес или регистр] FINCSTP   Если нужно вытолкнуть значение из ST(0), а адрес куда его выталкивать не нуже

MasterGH

MasterGH

Cheat Engine 6.8 Beta 1. ShowSelectionList функция

Довольно интересная функция, мне понравилась.  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) --> Примеры выполне

MasterGH

MasterGH

Cheat Engine 6.7 и Lua. Часть 4

Решил попробовать написать CE Lua  скрипт, который прочесывает структуру и в Dissect data/structures окне создавал бы структуру только со смещениями, с которыми код работает, т.е. читает или пишет.   Например, мой персонаж прогуливается по городу, а каждые 200 мс ставится брейкпоинт на смещение +1 до гипотетической N границы структуры (например до 4096).   Я не успел сделать определение типа, но смещения внутри структуры получить я успел.   Итак, находим начало стру

MasterGH

MasterGH

Cheat Engine 6.7 и Lua. Часть 3

Наконец-то дошли руки до третий части.   Речь пойдет о создании структур программно. Пример, что будет в конце записи     Сразу к делу. Нужен поинтер и процесс. Запустим туториал из Cheat Engine из меню Health->Cheat Engine Tutorial. Прохождение туториала подробно описано здесь     Подключаемся к процессу идем на 8-мой шаг. В руководстве есть поинтер [[[["Tutorial-i386.exe"+XXXXXX]+C]+14]+0]+18   Вместо XXXXXX может быть любое

MasterGH

MasterGH

Cheat Engine 6.7 и Lua. Часть 2

Как контролировать включение и выключение скриптов в таблице   AA или "Autoassembler code" код похожий на язык программирования ассемблера. Обычный АА-скрипт состоит из двух директив и добавляется в таблицу CE как запись // Код срабатывающий как при активации, так и при деактивации [ENABLE] // Код активации [DISABLE] // Код деактивации Чтобы код активировался, нужно включить галку напротив записи в таблице и наоборот выключить. Есть такие директивы как {

MasterGH

MasterGH

Cheat Engine 6.7 и Lua. Часть 1

Где писать Lua код?   Lua Engine окно, которое вызывается из главного окна CE.   Lua Console окно, которое вызывается из окна отладки CE.   Окно Autoassembler скрипта с вставки {$lua}, {$asm}   Lua Engine окно и Autoassembler-ные скрипты могут сохраняться в файлах Cheat Engine *.CT. *.CETRAINER, *.EXE   Lua Console для пошаговой отладки Lua кода и просмотров результатов ошибок и функции print()   Моя первая программа   Сначала узнаем версию для CE 6.7 и это

MasterGH

MasterGH

CE Lua. Ищем свойства userData.

UserData в Lua это пользовательский тип.  Точно не знаю, но я думаю  в документации в CE Lua (celua.txt или здесь на офф. сайте) тип userData у всех классов или большинства классов. Например,  проверим, что главная форма CE это userData тип local mainFormCE = getMainForm() print(type(mainFormCE)) > userdata (вывод из консоли) Выводим список свойств следующим образом через getmetatable функцию. Метатаблица — это  особая  таблица свойств Lua-переменной (подробнее здесь) local mainF

MasterGH

MasterGH

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.