You are not logged in.
Вот , этот же патч , только 2 БОЛЬШИХ НО :
1) Радио активируется абсолютно на всех машинах (на великах тоже) .
2) Добавлена поддержка gta_sa.exe v.1.1 (15 806 464 байт) .
http://gtamaps.net/forum/index.php?act= … &id=199130
Думаю , что это окончательная версия , если конечно не подкинет кто-нибудь ещё др. версий exe
Offline
Вот мой вариант (правда там только для версии 1.0) если еще кому нужен:
h..p://slil.ru/23888873
; файл PATCH.RC ; ----------------------[вырезать]------------------------------ #define IDD_DLG1001 1001 #define IDC_BUTTON1002 1002 #define IDC_BUTTON1003 1003 #define IDC_STATIC1004 1004 #define IDC_STATIC1005 1005 3001 ICON DISCARDABLE "patch.ico" IDD_DLG1001 DIALOGEX 0,0,169,44 CAPTION "GTA: San Andreas *patch*" FONT 8,"MS Sans Serif" STYLE 0x10c80800 EXSTYLE 0x00000000 BEGIN CONTROL "Patch",IDC_BUTTON1002,"Button",0x50010000,110,5,50,14,0x00020000 CONTROL "Exit",IDC_BUTTON1003,"Button",0x50010000,110,23,50,14,0x00020000 CONTROL "1. Enabled radio in noncivilian vehicles and bicycles.",IDC_STATIC1004,"Static",0x50000000,3,3,104,16,0x00000000 CONTROL "2. Pay'n'Spray repairs all vehicles.",IDC_STATIC1005,"Static",0x50000000,3,22,97,16,0x00000000 END ; ----------------------[вырезать]------------------------------ ; файл PATCH.ASM ; ----------------------[вырезать]------------------------------ .486 .model flat, stdcall option casemap: none include \masm32\include\kernel32.inc include \masm32\include\user32.inc include \masm32\include\windows.inc includelib \masm32\lib\kernel32.lib includelib \masm32\lib\user32.lib DlgProc PROTO :DWORD, :DWORD, :DWORD, :DWORD .const IDD_DLG equ 1001 IDC_PATCH equ 1002 IDC_EXIT equ 1003 .data FileName db "gta_sa.exe", 0 NewFileName db "gta_sa.exx", 0 ;Filesize dd 0DB7A00h CapOK db "Congratulation!", 0 MsgOK db "File successfull patched!", 0 CapNotFound db "File not found", 0 MsgNotFound db "Copy the patch to installed game dir and run again", 0 ;CapWrongSize db "Correct filesize is: 14383616 bytes", 0 ;MsgWrongSize db "Wrong filesize", 0 byte_replace1 dd 00h, 0 byte_replace2 dd 01B0h, 0 CarID dd 190h mult dd 24h byte_writing1 dd 01h byte_writing2 dd 02h .data? hInstance dd ? hFile dd ? .code start: invoke GetModuleHandle, NULL mov hInstance, eax invoke DialogBoxParam, hInstance, IDD_DLG, NULL, ADDR DlgProc, NULL invoke ExitProcess, eax DlgProc Proc hDlg :DWORD, uMsg :DWORD, wParam :DWORD, lParam :DWORD pusha .if uMsg == WM_INITDIALOG invoke LoadIcon, hInstance, 3001 invoke SendMessage, hDlg, WM_SETICON, 1, eax .elseif uMsg == WM_LBUTTONDOWN invoke SendMessage, hDlg, WM_NCLBUTTONDOWN, HTCAPTION, lParam .elseif uMsg == WM_COMMAND .if wParam == IDC_PATCH invoke SetFileAttributes, ADDR FileName, FILE_ATTRIBUTE_NORMAL invoke CopyFile, ADDR FileName, ADDR NewFileName, TRUE invoke CreateFile, ADDR FileName, GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL cmp eax, -1 je _notfound mov hFile, eax .while CarID != 264h mov eax, CarID mul mult add eax, 45BACBh invoke SetFilePointer, hFile, eax, NULL, FILE_BEGIN invoke WriteFile, hFile, OFFSET byte_replace1, 01h, OFFSET byte_writing1, NULL inc CarID .endw mov eax, 0DABC02h invoke SetFilePointer, hFile, eax, NULL, FILE_BEGIN invoke WriteFile, hFile, OFFSET byte_replace2, 02h, OFFSET byte_writing2, NULL invoke CloseHandle, hFile invoke MessageBox, NULL, ADDR MsgOK, ADDR CapOK, MB_ICONINFORMATION jmp _finish _notfound: invoke MessageBox, NULL, ADDR MsgNotFound, ADDR CapNotFound, MB_ICONERROR _finish: .elseif wParam == IDC_EXIT invoke EndDialog, hDlg, NULL .endif .elseif uMsg == WM_CLOSE invoke EndDialog, hDlg, NULL .endif popa xor eax, eax ret DlgProc EndP end start ; ----------------------[вырезать]------------------------------
Offline
Offline
У меня туда не заходит
h..p://foolroot.nm.ru/gta.sa.patch.rar
Last edited by Sanchez (07-02-2007 13:51)
Offline
2Sanchez:
да, ассемблер рулит!
попробуй для версии 1.1 еще сделать, совсем круто будет
Offline
попробуй для версии 1.1 еще сделать, совсем круто будет
Вот:
h..p://foolroot.nm.ru/sa_patch.rar
Last edited by Sanchez (12-02-2007 13:34)
Offline
Offline
Вот , сделал новый патч , точнее проапгрейдил старый ...
Главная особенность патча - поддержка любой версии gta_sa.exe !
Я тестил на выборочных версиях , всё работало ...
Но возможно на уж очень особенных и обрезанных версиях он не пойдёт Но по идее должно всё быть чики-пики
Качаем тут :
http://gtamaps.net/forum/index.php?act= … &id=203367
Offline
Если кому-то еще интересна скриптовая реализация включения радио, то я оптимизировал версию из третьего поста:
while true wait 250 $PLAYER_CHAR.Defined jf continue if or 00E1: player 0 pressed_key 8 00E1: player 0 pressed_key 9 then 0@ = 352231 008B: 0@ = &0(0@,1i) // carstruct 0@ > 0 jf continue 0@ -= 10786701 0@ /= 4 &0(0@,1i) = 0 wait 2000 end end end_thread
принцип прежний: садимся, жмем радио, выходим, садимся опять. Радио работает.
Offline
Вот сделать-бы пеереход к следующей мелодии одного и того же радио...
Хы , вроди бы игра читает всё одним большим потоком ... Врядли можно что-то сделать .
Offline
2Capushon:
ИМХО, тамошнее радио не заслуживает такой чести...
Вот сделать mp3-плейер не только в машине, но и на ногах, было бы полезнее. Хотя опять же, ведь есть Winamp5 + global hotkeys...
Offline
2Alexander:
Хы , вроди бы игра читает всё одним большим потоком ... Врядли можно что-то сделать .
:-) Тем немение выйдя из машины на время и зайдя в неё снова - обнаруживаем что игравшая мелодия заканчивается...
А ты попробуй в мультимоде едя в машине нажать "ХЕЛП", а затем отключить его - мелодия в машине изменится на следующую. Спонтанная фича, я ничего для этого не делал, отдельно такое не получается.
2Seemann:
Вот сделать mp3-плейер не только в машине, но и на ногах, было бы полезнее.
Даже не представляю такую возможность...
Хотя опять же, ведь есть Winamp5 + global hotkeys...
Нее, лишняя нагрузка на проц, да и мелодии в игре я давно поменял на нужные и приятные мне...
Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ
Offline
Люди может не в тему,но такой вопрос,трудно ли вообще изменять exe'шник и вообще как понять что там к чему?
Offline
Люди,можите мне привести пример,как чтонибуть изменить в стандартном экзешнике СА,чтоб в игре чёнибуть изменилось?
Скажите чтонибуть плз!
Offline
Люди может не в тему,но такой вопрос,трудно ли вообще изменять exe'шник и вообще как понять что там к чему?
не намного сложнее скриптинга. Прочитай краткое руководство по ассемблеру, скачай IDA5, дизассемблируй ехе и все внутренности игры будут у тебя перед глазами. Для помощи можно взять готовую базу от listener'а и мой список функций. Все это ты найдешь в разделе Справочная информация.
И, пожалуйста, не надо мультипостинга.
Offline
Ок,попробую!
З.Ы если есть-дайе пожалйста ссылку на Иду5 и краткий справочник по ассемблеру пожалуйста
З.Ы2 извените за многопостье
Last edited by skv1991 (30-03-2007 16:15)
Offline
З.Ы если есть-дайе пожалйста ссылку на Иду5 и краткий справочник по ассемблеру пожалуйста
В этом случае поиск по форуму используют Не раз уже обсуждалось
Offline
Спс,я нашёл про ассемблер,а за иду респект,тока она у меня неработает:(
Last edited by skv1991 (02-04-2007 14:25)
Offline