Работа с памятью игры, exe
|
|
izerli | Дата: Вторник, 27.09.2011, 22:41 | Сообщение # 256 |
Группа: Проверенные
Сообщений: 90
Статус: Offline
| а нет ли другого способа? может за это отвечает какая то функция в exe? просто таким способом я не уверен что машина после достижения точки назначения поедет куда либо еще, и на трассах я боюсь это будет выглядеть не ахти. хотя идея хорошая, если больше нет способов то сделаю наверно так.
|
|
| |
Den_spb | Дата: Среда, 28.09.2011, 01:34 | Сообщение # 257 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Данный вопрос не изучал, поэтому другого способа предложить не могу. Возможные отправные точки для исследования exe: 1.Оборудована ли машина сиреной (процедура 0x6D8470 _isModelWithSiren?) 2.Включена ли на машине сирена в данный момент (текстовый поиск буквосочетания +42Dh)
|
|
| |
izerli | Дата: Среда, 28.09.2011, 09:50 | Сообщение # 258 |
Группа: Проверенные
Сообщений: 90
Статус: Offline
| Денис, спасибо! и еще такой вопрос, а не поделишься ли ссылочкой на свою IDA? а то я пару попробовал, и вечно пишет что версия не подходит.
|
|
| |
Den_spb | Дата: Среда, 28.09.2011, 15:29 | Сообщение # 259 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Я пользуюсь IDA 5.2. Это не самая свежая версия, поэтому её поиск не должен представлять сложностей (вроде есть на cracklab ru). IDA 5.2 читает версию базы gta_sa.exe от 20091205.
|
|
| |
444andrei444 | Дата: Среда, 28.09.2011, 20:39 | Сообщение # 260 |
Группа: Проверенные
Сообщений: 15
Статус: Offline
| Можно включить на машине сирену, если транспортная модель не предусматривает сирену, то визуального изменения не будет, а вот машины будут разьезжаться.
|
|
| |
izerli | Дата: Среда, 28.09.2011, 21:44 | Сообщение # 261 |
Группа: Проверенные
Сообщений: 90
Статус: Offline
| Quote (444andrei444) ожно включить на машине сирену, если транспортная модель не предусматривает сирену, то визуального изменения не будет, а вот машины будут разьезжаться. но звук будет. Quote (Den_spb) Я пользуюсь IDA 5.2. Это не самая свежая версия, поэтому её поиск не должен представлять сложностей (вроде есть на cracklab ru). IDA 5.2 читает версию базы gta_sa.exe от 20091205. большое спасибо!
|
|
| |
Den_spb | Дата: Среда, 28.09.2011, 22:09 | Сообщение # 262 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Quote (444andrei444) Можно включить на машине сирену, если транспортная модель не предусматривает сирену, то визуального изменения не будет, а вот машины будут разьезжаться. В смещение структуры машины, отвечающее за состояние сирены, попробовал записывать соответствующее значение. Если сирена на машине не предусмотрена, то другие автомобили дорогу не уступают.
Quote (izerli) большое спасибо! Незачто
|
|
| |
DK22Pac | Дата: Четверг, 29.09.2011, 01:55 | Сообщение # 263 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Там есть метод CAutomobile, который "делает авто таким, которому уступают дорогу". В базе по SA его нету, кажется. Добавлено (29.09.2011, 01:45) --------------------------------------------- Точнее, он в базе не найден. Добавлено (29.09.2011, 01:55) --------------------------------------------- CCarAI::MakeWayForCarWithSiren
|
|
| |
444andrei444 | Дата: Четверг, 29.09.2011, 10:47 | Сообщение # 264 |
Группа: Проверенные
Сообщений: 15
Статус: Offline
| Звука не будет. И перед тем как писать следует проверить это в игре. Добавлено (29.09.2011, 10:47) --------------------------------------------- Извиняюсь за то что ввел в заблуждение. Перепутал со скриптом одним.
|
|
| |
Alexey | Дата: Воскресенье, 23.10.2011, 05:06 | Сообщение # 265 |
Группа: Пользователи
Сообщений: 1
Статус: Offline
| Так как по Вайс Сити нет отдельной темы, спрошу тут. Может кто знает как вывести на экран текстуру? В базе есть ф-ии: CTexture__draw, CTexture::Draw, CTexture::draw. Возможно как-то с помощью них, не могу разобраться
|
|
| |
DK22Pac | Дата: Воскресенье, 23.10.2011, 21:46 | Сообщение # 266 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| В вайсе есть опкод 038d.
|
|
| |
izerli | Дата: Четверг, 03.11.2011, 10:01 | Сообщение # 267 |
Группа: Проверенные
Сообщений: 90
Статус: Offline
| Денис, подскажи пожалуйста, как можно получить текущие обороты двигателя?
|
|
| |
Den_spb | Дата: Четверг, 03.11.2011, 17:21 | Сообщение # 268 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Этого не знаю. Надо лезть в exe и смотреть, при каких условиях меняется номер текущей передачи машины.
|
|
| |
izerli | Дата: Пятница, 04.11.2011, 21:42 | Сообщение # 269 |
Группа: Проверенные
Сообщений: 90
Статус: Offline
| Den_spb, Печально, печально....Просто видел в saCamHack тахометр, который даже как будто и не врал. Мыслишка одна появилась... Добавлено (04.11.2011, 21:42) --------------------------------------------- обнаружил, что при включенном CamHack по адресу 0xA923D0 периодически прописываются обороты двигателя. при выключенном там стабильно -1
|
|
| |
Den_spb | Дата: Пятница, 04.11.2011, 21:59 | Сообщение # 270 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Code .data:00A913E8 _textDrawers CTextDrawer 60h dup(<?>) Какой-то массив. Судя по названию, имеет отношение к надписям, выводимым на экран.
Надо поискать в базе, как рассчитывается номер текущей передачи (хранится в структуре авто по смещению 0x4B4). Вот, например, процедура, которая вроде имеет отношение к данному вопросу: Code .text:004F8DF0 sub_4F8DF0 proc near ; CODE XREF: sub_501E10+360p Попробуй проверить смещения 0x49C [float], 0x964 [float].
|
|
| |