SA:MP Патч лимита скинов и фур

STYOP

Известный
Автор темы
199
37
Версия SA-MP
  1. 0.3.7-R3
Приветствую, столкнулся с проблемой при добавлении кастомных скинов на версии SA-MP 0.3.7 R3, если ставиться id в peds.ide выше 319, происходит краш в экране загрузки, вопрос следующий, что именно нужно пропатчить? Игру или samp.dll? Fastman стоит, opensaa стоит.
Так-же новые добавленные фуры не могут цеплять трейлера

P.S. если кто сможет сделать за лаве отпишите
 
Последнее редактирование:
Решение
Патчи педов у FLA конфликтуют с патчами сампа. Нужно патчить самп:
C++:
patch::PutRetn(SAMP_ADDROF(0xAA130));

Для фур нужно добавить новые иды в функу получения координат крюка.
Пример сомнительного качества из обхода:
C++:
void __declspec(naked) patch_6AF26C()
{
    static unsigned int return_addr_true = 0x6AF2CC;
    static unsigned int return_addr_false = 0x6AF284;

    __asm {
// оригинальные
        cmp ax, 514
        je return_true
        cmp ax, 515
        je return_true
        cmp ax, 403
        je return_true
        cmp ax, 591
        je return_true

// кастом
        cmp ax, 12725
        je return_true
        cmp ax, 12734
        je return_true
        cmp ax, 12740
        je return_true
        cmp ax, 15332...

БеzликиЙ

Автор темы
Проверенный
1,012
587
аризона решила это очень просто, вместо peds.ide они эти все чудеса хранят в samp.ide. насчёт прицепов, можно их со стороны сервера цеплять по кнопке

1744066177443.png
 

STYOP

Известный
Автор темы
199
37

redcode

🤔
Друг
157
1,311
Патчи педов у FLA конфликтуют с патчами сампа. Нужно патчить самп:
C++:
patch::PutRetn(SAMP_ADDROF(0xAA130));

Для фур нужно добавить новые иды в функу получения координат крюка.
Пример сомнительного качества из обхода:
C++:
void __declspec(naked) patch_6AF26C()
{
    static unsigned int return_addr_true = 0x6AF2CC;
    static unsigned int return_addr_false = 0x6AF284;

    __asm {
// оригинальные
        cmp ax, 514
        je return_true
        cmp ax, 515
        je return_true
        cmp ax, 403
        je return_true
        cmp ax, 591
        je return_true

// кастом
        cmp ax, 12725
        je return_true
        cmp ax, 12734
        je return_true
        cmp ax, 12740
        je return_true
        cmp ax, 15332
        je return_true
        cmp ax, 15333
        je return_true
        cmp ax, 15334
        je return_true
        cmp ax, 15335
        je return_true

        jmp return_addr_false
    return_true:
        jmp return_addr_true
    }
}

patch::RedirectJump(0x6AF26C, patch_6AF26C);
 
  • Нравится
Реакции: STYOP

STYOP

Известный
Автор темы
199
37
Патчи педов у FLA конфликтуют с патчами сампа. Нужно патчить самп:
C++:
patch::PutRetn(SAMP_ADDROF(0xAA130));

Для фур нужно добавить новые иды в функу получения координат крюка.
Пример сомнительного качества из обхода:
C++:
void __declspec(naked) patch_6AF26C()
{
    static unsigned int return_addr_true = 0x6AF2CC;
    static unsigned int return_addr_false = 0x6AF284;

    __asm {
// оригинальные
        cmp ax, 514
        je return_true
        cmp ax, 515
        je return_true
        cmp ax, 403
        je return_true
        cmp ax, 591
        je return_true

// кастом
        cmp ax, 12725
        je return_true
        cmp ax, 12734
        je return_true
        cmp ax, 12740
        je return_true
        cmp ax, 15332
        je return_true
        cmp ax, 15333
        je return_true
        cmp ax, 15334
        je return_true
        cmp ax, 15335
        je return_true

        jmp return_addr_false
    return_true:
        jmp return_addr_true
    }
}

patch::RedirectJump(0x6AF26C, patch_6AF26C);
1744109203551.png

После патча игра стала запускаться, но самп начал выдавать такую ошибку, за фуры сенкс

UPD. фиксанул, спасибо