#51 25-12-2010 08:22

Resager
Registered: 24-12-2010
Posts: 12

Re: Вопрос по памяти

Как изменить текущую строку имен миссии (используется для названия сохранения). И вообще делается ли это через редактирование памяти или есть опкод? (не нашёл оного)

+для самообучения:
А есть ли где список участков памяти, которые можно редактировать под свои нужды (т.е. какой участок памяти за что отвечает), например изменить цвет звёздочек уровня преступности (это я нашёл), изменить стандартный текст мисии и т.д.? (ещё был мод, которые изменял количество поездов, но тогда просто патчился ЕХЕ, а в памяти же абсолютно другие области по идее, хотя можно было бы найти значения, но вот знать бы что искать).

Last edited by Resager (25-12-2010 08:31)


WinHex,

Offline

#52 25-12-2010 08:51

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Вопрос по памяти

Resager wrote:

Как изменить текущую строку имен миссии (используется для названия сохранения). И вообще делается ли это через редактирование памяти или есть опкод? (не нашёл оного)

Есть опкод
0318: set_latest_mission_passed 0@s
У Deji есть мод, который меняет название сейва - http://gtag.gtagaming.com/forums/index. … howfile=19
Насчёт списка участков памяти я не понял что тебе нужно, если хочешь посмотреть известные адреса - см. тему на gtaforums/статью gtamodding, ну и здесь много интересностей есть.

Offline

#53 25-12-2010 09:22

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Вопрос по памяти

Как поднять максимум вагонов в поезде?

Offline

#54 25-12-2010 09:38

Resager
Registered: 24-12-2010
Posts: 12

Re: Вопрос по памяти

Sergey81, спасибо!
Про поезда тоже интересно. Если найду сам, обязательно отпишусь


WinHex,

Offline

#55 26-12-2010 06:23

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос по памяти

А есть ли где список участков памяти, которые можно редактировать под свои нужды

http://gtamodding.ru/wiki/Адреса_Памяти_(SA)

Как поднять максимум вагонов в поезде?

Девятнадцати вагонов мало?

Offline

#56 26-12-2010 08:45

Resager
Registered: 24-12-2010
Posts: 12

Re: Вопрос по памяти

у меня только 2 вагона постоянно + сам тягач по умолчанию. За ссылку спасибо!

Last edited by Resager (26-12-2010 08:45)


WinHex,

Offline

#57 26-12-2010 08:55

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос по памяти

Resager wrote:

у меня только 2 вагона постоянно + сам тягач по умолчанию.

http://sannybuilder.com/forums/viewtopic.php?id=18

Offline

#58 26-12-2010 19:50

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Вопрос по памяти

А есть у кого-нибудь идеи как приаттачить вертолёт к движениям мыши? Чтобы управление было примерно как в Just Cause 2. Сейчас если ракетами без автонаведения стрелять куда-то надо, фиг попадёшь с первого раза.

Offline

#59 26-12-2010 20:42

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Вопрос по памяти

Den_spb wrote:

Как поднять максимум вагонов в поезде?

Девятнадцати вагонов мало?

Да.

Offline

#60 01-01-2011 11:24

Kostyan
Registered: 27-09-2009
Posts: 94

Re: Вопрос по памяти

Может кто-нибудь знает, какой адрес памяти отвечает за арест игрока в Vice City?

Offline

#61 02-01-2011 13:47

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Вопрос по памяти

А можно ли через память поменять количество создаваемых "gang members" при захвате территории? Увеличить их скажем в n раз.

Offline

#62 04-01-2011 00:22

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: Вопрос по памяти

Можно ли проверить, загружен ли определённый txd-архив в память?


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#63 04-01-2011 00:37

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос по памяти

Опкод  0390: load_txd_dictionary %1h% вызывает функцию 0x731C80

call    _txdAdd         ; выделяет элемент в TexDictionaryPool и возвращает его индекс в пуле

Адрес пула:

.data:00C8800C     ; void *TexDictionaryPool

Код функции:

    ; int __cdecl txdAdd(char *name)
    _txdAdd proc near

    name= dword ptr  4

000 mov     ecx, _TexDictionaryPool
000 push    esi
004 call    _CPool_CTexDictionary__allocate
004 mov     esi, eax
004 mov     eax, [esp+4+name]
004 push    eax
008 mov     [esi+CTexDictionaryEntry.dictionary], 0 ; RwTexDictionary *
008 mov     [esi+CTexDictionaryEntry.usageCount], 0
008 mov     [esi+CTexDictionaryEntry.parentIndex], -1
008 call    crc32FromUpcaseString ; // возвращает CRC32 строки, приведённой к верхнему регистру
008 mov     [esi+CTexDictionaryEntry.hash], eax
008 mov     ecx, _TexDictionaryPool
008 sub     esi, [ecx+CPool.objects]
008 mov     eax, 2AAAAAABh
008 imul    esi
008 mov     eax, edx
008 sar     eax, 1
008 mov     edx, eax
008 add     esp, 4
004 shr     edx, 1Fh
004 add     eax, edx
004 pop     esi
000 retn
    _txdAdd endp

Думаю копать надо где-то здесь.

Offline

#64 04-01-2011 09:52

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: Вопрос по памяти

Den_spb, спасибо за информацию. Буду ждать появления программистов...


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#65 06-01-2011 10:23

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Вопрос по памяти

Sergey81 wrote:

А есть у кого-нибудь идеи как приаттачить вертолёт к движениям мыши? Чтобы управление было примерно как в Just Cause 2. Сейчас если ракетами без автонаведения стрелять куда-то надо, фиг попадёшь с первого раза.

легко - заходишь в меню настроек и ставишь управление самолётами мышью

на крайняк, можно и скрипт накидать


GIMS developer

Offline

#66 06-01-2011 12:57

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Вопрос по памяти

3Doomer wrote:

легко - заходишь в меню настроек и ставишь управление самолётами мышью

на крайняк, можно и скрипт накидать

http://www.youtube.com/watch?v=KeksObPs … age#t=140s
Управление мышью, которое в настройках - для мазохистов.

Offline

#67 07-01-2011 09:45

VcSaJen
Registered: 25-08-2006
Posts: 217

Re: Вопрос по памяти

Как прицепить актёра игрока на машину (attach actor to car with offset...)
Через опкоды можно только поставить в turret - режим, но так режим от первого лица и невозможно менять оружие.


[small][/small]

Offline

#68 07-01-2011 12:18

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

Re: Вопрос по памяти

@VcSaJen - Поставь в бесконечный цикл перемещение актера к машине. Попробуй так.


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#69 24-01-2011 14:35

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: Вопрос по памяти

Пожалуйста, обьясните, что это

CEntity +0x18    RWClump

Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#70 24-01-2011 18:58

listener
From: Vice City
Registered: 09-11-2006
Posts: 616
Website

Re: Вопрос по памяти

Это указатель на объект RenderWare, который представляет этот Entity.
В зависимости от типа Entity, это может быть либо RpAtomic (простой mesh), либо RpClump (набор mesh-ей).

Если нет желания подвигать вертексы напрямую, для скриптинга не используется.

Offline

#71 30-01-2011 23:16

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: Вопрос по памяти

listener wrote:

сли нет желания подвигать вертексы напрямую, для скриптинга не используется.

Как я понимаю, через это можно выйти на матрицы костей педа, и двигать/вращать их "ин-гейм".

PS
В GTA3 есть метод

0x473F10 CEntity::AttachToRwObject((RwObject *))

Можно ли с его помощью прицепить обьект к педу/машине?
Перепробовав несколько вариантов, понял, что сам в этом не разберусь...


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#72 31-01-2011 10:34

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Вопрос по памяти

Как я понимаю, через это можно выйти на матрицы костей педа, и двигать/вращать их "ин-гейм".

ы, хочешь сделать что-то типа physgun из garry's mod? но ведь в сане используется только заранее просчитанная анимация, или нет?

Offline

#73 31-01-2011 22:29

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

Re: Вопрос по памяти

Нет, я ничего не собираюсь делать. "Физику", создание анимации в зависимости от положений игровых обьектов уже пытался делать Ryosuke, но так и не закончиил, т. к. завязал с моддингом.
Второй вопрос меня больше интересует. Что означает RwObject * ? Как я понял, это не адресс структуры.
Ещё хотелось бы узнать о массиве пикапов в GTA3: начало, кол-во элементов, размер элемента (надо для перебора).


Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#74 19-02-2011 23:30

CraZZZy-GameRRR
From: Москва
Registered: 11-08-2009
Posts: 97
Website

Re: Вопрос по памяти

Как зная ID транспорта определить его номер в пуле Handling?

Offline

#75 20-02-2011 00:11

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопрос по памяти

Как вычислить через ИД - не знаю, но могу предложить вариант определения через хэндл/структуру:

        03C0: 0@ = actor $player_actor car
        0A97: 0@ = car 0@ struct
        0@ += 0x22
        0A8D: 0@ = read_memory 0@ size 2 virtual_protect 0 //model index
        0@ *= 4
        0@ += 0xA9B0C8
        0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0 //CModel
        0@ += 0x4A
        0A8D: 0@ = read_memory 0@ size 2 virtual_protect 0 //handlingIndex

Offline

Board footer

Powered by FluxBB