Опрос на сайте
Как вам движок Vice Lua?

Популярные новости

[CLEO]CarRec(plus ObjRec)

[CLEO]CarRec(plus ObjRec)
"CarRec" дает вам возможность записывать движения автомобиля в файл ".cr" для воспроизведения их позднее в ваших скриптах и

Magic - TXD Builder 0.9.1

Magic - TXD Builder 0.9.1
Полезная программа для сборки TXD файлов, которая важные параметры, такие как mip map, DXT сжатие... Кроме того, программа

Main Menu Scene

Main Menu Scene
"Main Menu Scene" дает вам возможность создавать собственные сцены в "Главном Меню" игры с кастомными картой и скриптом, при

Vertex Alpha в Vice City

Vertex Alpha в Vice City
То, что некогда было доступно лишь в GTA: San Andreas и выше: Vertex Alpha, а потенциально - и физический бленд текстур в

Rollerskates Mod

Rollerskates Mod
Модификация позволяет кататься на роликах, прямо как пляжные девушки.

03 ноябрь 2014

Чтение и запись адресов GTA Vice City Часть 2


Так теперь мы поняли, для того что-бы из нашего плагина, записать значение в память нужно сделать так:

*(BYTE*)адрес = значение; //для 1 байта, целого значения
*(WORD*)адрес = значение; //для 2 байтов, целого значения
*(int*)адрес = значение; //для 4 байтов, целого значения
*(float*)адрес = значение; //для 4 байтов, вещественного значения


Для того что-бы считывать значения из памяти GTA Vice City в нашем плагине, то можно поступить так:

переменная = *(BYTE*)адрес; //для 1 байта, целого значения
переменная = *(WORD*)адрес; //для 2 байтов, целого значения
переменная = *(int*)адрес; //для 4 байтов, целого значения
переменная = *(float*)адрес; //для 4 байтов, вещественного значения


Думаю если вы разбираетесь в C++, то все будет вам понятно но все же разберем, как работает данный код. Так возьмем для примера запись в 1 байт BYTE. Изначально как мы помним из всех известных правил, выражение выполняется в скобке первым значит наш тип это типизированный указатель на BYTE, выглядит так (BYTE*) тут же мы его разыменовываем при чем по адресу и затем записываем в него значение. Для того что-бы понять весь этот процесс визуально, возьмем для примера, участок памяти 005CCB19.

Чтение и запись адресов GTA Vice City Часть 2


Если мы будем использовать такой код “*(BYTE*)адрес“, не важно для записи или чтения, то мы захватим такую область в памяти:

Чтение и запись адресов GTA Vice City Часть 2


Если “*(WORD*)адрес” то захватим эти адреса 005CCB19 и 005CCB1A:

Чтение и запись адресов GTA Vice City Часть 2


Наконец если же “*(int*)адрес” то мы захватим аж 4 адреса, так как тип 4 байта 005CCB19, 005CCB1A, 005CCB1B, 005CCB1C:

Чтение и запись адресов GTA Vice City Часть 2


Вообщем теперь более понятно, что обхватываемый участок записи, зависит от размера типа.
Ну вот собственно и все, мы научились теперь записывать и считывать свои значения в памяти GTA Vice City все достаточно просто. Напомню что VirtualProtect функция нужна будет, перед записью там, где стоит защита от записи. Перед записью и чтением, не забудь-те вызывать эту функцию, Об этой функции информация есть в интернете.

Скачать пример ASI [7,29 Kb] (cкачиваний: 24)

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Добавить свой комментарий

Полужирный Наклонный текст Подчёркнутый текст Зачёркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Вставка ссылкиВставка защищённой ссылки Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Другие материалы

Полезный плагин EASIer для 3 серий GTA

Полезный плагин EASIer для 3 серий GTA
Если у вас есть адреса памяти, нужных вам значений и вы хотели бы использовать ваши значения в играх GTA III, GTA VC, GTA

Замена переменных в GTA Vice City

Замена переменных в GTA Vice City
Иногда бывает, такие случаи, что один участок памяти (т.е переменная) используется в разных местах, для разных вещей. Но это

Подхват переменных в GTA Vice City

Подхват переменных в GTA Vice City
Сейчас в начале разберем вкратце, что же за такой подхват переменных в GTA Vice City. Например мы просто объявляем некую

Чтение и запись адресов GTA Vice City

Чтение и запись адресов GTA Vice City
В этом уроке мы научимся, записывать и считывать значения из адресов памяти игры GTA Vice City непосредственно из нашего
Ads

Группа GTA Builder
Наши партнеры

GTA FreeRunning Story