Четверг, 25.04.2024, 07:25
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Игры серии ГТА » Работа с памятью, exe » Работа с памятью игры, exe
Работа с памятью игры, exe
DK22PacДата: Вторник, 07.06.2011, 22:46 | Сообщение # 211
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Денис, о_О
Нерешаемых задач же нету.
У меня "на запас" ещё одна идейка - прицепить к авто обьект с 2dfx - короной (которую надо будет как-то убрать) и проекцией. Ах, да, ещё к тачке можно партикл прицепить. Так и делают в модах с неоном. Но тогда не будет взаимодействия с поверхностью.
А способ с инжектором я ещё буду тестировать.
 
Den_spbДата: Среда, 08.06.2011, 05:15 | Сообщение # 212
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (DK22Pac)
У меня "на запас" ещё одна идейка - прицепить к авто обьект с 2dfx - короной (которую надо будет как-то убрать) и проекцией.
Корону можно и не создавать (установить нулевой радиус короны).
 
walkДата: Пятница, 10.06.2011, 04:05 | Сообщение # 213
Группа: Проверенные
Сообщений: 96
Статус: Offline
А как активировать сигнализацию на уже существующей машине? Искал по alarm, но путного ничего не нашёл. Только опкод создания машины
 
DK22PacДата: Суббота, 11.06.2011, 20:15 | Сообщение # 214
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
walk, сегодня зайду в IDA, посмотрю.

Добавлено (11.06.2011, 20:15)
---------------------------------------------
walk,

Code
0x6A3770     CAutomobile__processCarAlarm
 
walkДата: Воскресенье, 12.06.2011, 12:02 | Сообщение # 215
Группа: Проверенные
Сообщений: 96
Статус: Offline
Ещё вопрос. А как узнать, какая функция обращается к структуре?
 
Den_spbДата: Понедельник, 13.06.2011, 03:44 | Сообщение # 216
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Ссылок на смещения структур IDA вроде не даёт. Поэтому я могу предложить только один способ - текстовый поиск по базе (Search-Text). Т.к. указатель на структуру обычно записан в ecx или в esi, то искать следует подобные комбинации: [ecx+14h] и [esi+14h]
 
DK22PacДата: Воскресенье, 26.06.2011, 23:33 | Сообщение # 217
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Наткнулся на опкоды movsx и movzx. Что они делают?
 
Den_spbДата: Воскресенье, 26.06.2011, 23:59 | Сообщение # 218
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Это разновидности опкода присвоения.
Описания неизвестных команд можно найти в статьях по ассемблеру, которые выложены на соответствующих сайтах. Вот одна из статей: http://www.ratprog.msevm.com/assembler/pr/19.htm
 
DK22PacДата: Вторник, 28.06.2011, 23:51 | Сообщение # 219
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Спасибо.
Code
sub_4A0DE0

Занимается созданием выстрела. Принимает много параметров, вызывается как метод к dword_A9AE00 (Что это - без понятия).
В общем, там всё зашито в EventGroup, мне даже не удалось найти как применяется анимация пальбы к педу. Вот таки дела...
Так и ещё вопрос что это значит
Code
CVector__normalize

Я вэто вообще плохо разбираюсь, елё допёр, что есть вектор... Желательно своими словами (если знаешь), ибо википедия сильно мудрит в этих вещах.
 
Den_spbДата: Среда, 29.06.2011, 01:32 | Сообщение # 220
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (DK22Pac)
Занимается созданием выстрела.
Code
@@opcode_058A:          ; create_gun_flash_from %1d% %2d% %3d% to %4d% %5d% %6d%
Это не выстрел, а эффект частиц (вспышка у дула).

Quote (DK22Pac)
Я вэто вообще плохо разбираюсь, елё допёр, что есть вектор...
Вектор - набор из трёх координат. В чём тут подвох?

Quote (DK22Pac)
"CVector__normalize"
Не думаю, что Википедия знает, что это такое smile
Судя по коду, осуществляется деление координат вектора на его длину, т.е. вектор преобразуется в единичный.
 
DK22PacДата: Среда, 29.06.2011, 01:45 | Сообщение # 221
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Quote (Den_spb)
В чём тут подвох?

Ну я, честно, долго этого понять не мог. В школе я это как-то "упустил"...
Quote (Den_spb)
Занимается созданием выстрела.

Тут я имел ввиду: создание партиклов (дым, вспышка огня), создание bullettrack (жёлтая линия - след движения пули), и, возможно, что-то ещё. Хотя мне это уже не сильно нужно, т.к. я пошёл простым путём: создавал gunflash и m4shot из одной точки в другую. (раньше я хотел найти способ произвести выстрел педа из его оружия).
Quote (Den_spb)
Судя по коду, осуществляется деление координат вектора на его длину, т.е. вектор преобразуется в единичный.

Спасибо, вроде бы понял)
 
Den_spbДата: Среда, 29.06.2011, 01:50 | Сообщение # 222
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (DK22Pac)
Ну я, честно, долго этого понять не мог. В школе я это как-то "упустил"...
Теперь, благодаря скриптингу, есть возможность наверстать упущенное smile
 
VitalДата: Воскресенье, 03.07.2011, 22:35 | Сообщение # 223
Группа: Проверенные
Сообщений: 206
Статус: Offline
Вот вопросик: почему, когда я изменяю громкость радио через память, она изменяется только в меню, но в игре остается прежней? Я пытался выйти из машины и войти снова, но ничего не произошло. Измененная громкость была только в меню. Вот скрипт:


SCRIPTER
 
walkДата: Четверг, 07.07.2011, 10:13 | Сообщение # 224
Группа: Проверенные
Сообщений: 96
Статус: Offline
Vital, То что ты изменяешь, меняет значения только меню, на игровых это никак не отразится. За игровую громкость, скорей всего отвечает CAudio.

Вопрос к опытным:

Code
for 10@ = 0xBA86F0 to 0xBAA248 step 0x28


Интересует следующее, откуда взято 0xBAA248? И объясните простым языком, как работает эта часть кода

Добавлено (07.07.2011, 10:13)
---------------------------------------------
Ещё вопрос, написал скрипт, по которому возле каждой сферы создаётся эффект, но почему-то эффект создаётся только около сферы, созданной в этом же скрипте. А допустим у сфер миссий ничего не происходит

Code

03BC: 5@ = create_sphere_at 2265.0986 -1256.0848 23.9766 radius 1.0  

:Noname_2
wait 0  
0@ = 0xA91268  
0@ += 0x8  
0A8D: 1@ = read_memory 0@ size 4 virtual_protect 0  
0@ += 0x4  
0A8D: 2@ = read_memory 0@ size 4 virtual_protect 0  
0@ += 0x4  
0A8D: 3@ = read_memory 0@ size 4 virtual_protect 0     
064B: 4@ = create_particle "smoke_flare" at 1@ 2@ 3@ type 1  
064C: make_particle 4@ visible  

jump @Noname_2


Сообщение отредактировал walk - Четверг, 07.07.2011, 07:39
 
DK22PacДата: Четверг, 07.07.2011, 13:35 | Сообщение # 225
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Quote (walk)
Интересует следующее, откуда взято
0xBAA248?

Обычно массив структур "перебирается" так:
for 0@ = <адресс первой структуры в массиве> to <адресс последней структуры в массиве> step <размер одной структуры>
Адресс первой структуры в массиве является адрессом начала самого массива струкур.
Адресс последней структуры в массиве выщитывается так:
<адресс последней структуры в массиве> = <адресс первой структуры в массиве> + <размер одной структуры> * <количество структур в массиве>

Добавлено (07.07.2011, 13:30)
---------------------------------------------

Quote (walk)
И объясните простым языком, как
работает эта часть кода

По смещению +0x1C от начала структуры находится значение размера иконки. Если это значение равно 3, то оно меняется на 2.

Добавлено (07.07.2011, 13:32)
---------------------------------------------

Code
0A8D: 22@ = read_memory 10@ size 4
virtual_protect 0

Эта команда в том коде лишняя.

Добавлено (07.07.2011, 13:35)
---------------------------------------------

Quote (walk)
написал скрипт, по которому
возле каждой сферы создаётся эффект, но
почему-то эффект создаётся только около
сферы, созданной в этом же скрипте

Верно, ты же создаешь эффект только у сферы, адресс структуры которой - 0xA91268.


Сообщение отредактировал DK22Pac - Четверг, 07.07.2011, 13:19
 
Форум » Игры серии ГТА » Работа с памятью, exe » Работа с памятью игры, exe
Поиск: