SA:MP ASI FastExit [AI, SAMP 0.3.7 any]

Орк

Известный
Автор темы
519
498
Версия SA-MP
  1. 0.3.7 (R1)
  2. 0.3.7-R2
  3. 0.3.7-R3
  4. 0.3.7-R4
  5. 0.3.7-R5
  6. 0.3DL
Идея взята отсюда, и дальше по цепочке exitTime - Game Exit Fix​

FastExit — ASI для GTA San Andreas и SA:MP. Быстрый выход из игры как при кнопке "Выйти из игры" в меню, так через /q (/quit)

Установка
  • Положите FastExit.asi рядом с gta_sa.exe или в modloader\asi (или scripts modloader).
  • Отредактируйте FastExit.ini при необходимости. По умолчанию стоит 0

FastExit.ini, секция [Settings]
  • Exit mode0 обычный выход; 1ExitProcess; 2TerminateProcess.
  • 1/2 и меню «Выйти»: MinHook на CGame::Shutdown, только gta_sa.exe 1.0 US (compact или Hoodlum).
  • 1/2 и чат /q, /quit: одна подмена вызова на пути выгрузки известной samp.dll (кроме R2 — в коде нет RVA для этой ветки).

Поддерживаемые samp.dll: R1, R2, R3, R3-1, R4, R4-2, R5-1, DL-R1. R5-2. Иная samp.dll — без подмены на выгрузке.

Исходники: https://github.com/dmitriyewich/FastExit
 

Вложения

  • FastExit.asi
    120 KB · Просмотры: 11
Последнее редактирование:

Орк

Известный
Автор темы
519
498
эх было же время когда люди все сами писали
Сам в шоке, что теперь нейросети такое щёлкают на раз-два. А я ведь в C++ понимаю приблизительно 0.

Если б они были при рассвете сампа, боюсь представить, что было бы с модами, практически любое желание можно воплотить

И самое главное, что это работает
 

Орк

Известный
Автор темы
519
498
Обновление.
  • Теперь это не полная копипаста оригинала. Я отказался от хука таймеров.
  • Было "exitTime" → стало "FastExit": теперь есть два файла - FastExit.asi и FastExit.ini.
  • SA:MP поддерживает версии R1, R2, R3, R3-1, R4, R4-2, R5-1 и DL-R1.
  • Настройки выхода:
    • 0 - как без плагина
    • 1 или 2 - быстрый выход через ExitProcess / TerminateProcess
  • Меню "Выйти из игры":
    • Жёсткий выход при 1/2 только на версии gta_sa.exe 1.0 US (compact или Hoodlum)
  • /q / /quit:
    • При 1/2 заменяет вызов на пути выгрузки известной samp.dll (в R2 этой замены нет)
  • Без старых таймеров:
    • Нет настраиваемых задержек выхода по времени, только точные команды/исправления для режима 1/2
  • Одиночный режим:
    • Плагин работает и без samp.dll

Обновление.
  • Закрытие окна (ALT+F4 / крестик) теперь тоже обрабатывается через Exit mode=0/1/2
 
Последнее редактирование: