Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Повышение ФПС не активного окна
#11
Код:
int __cdecl SleepStub()
{
    return 0;
}

void DisableLazyMode(void)
{
    BYTE *LazyMode  = (BYTE *)GetProcAddress(LoadLibraryA("core.dll"), "?appSleep@@YAXM@Z");

    if(!LazyMode)
        return;
    
    ULONG oldProtect;
    if(!VirtualProtect(LazyMode, 5, PAGE_READWRITE, &oldProtect))
        return;

    *LazyMode = 0xE9;
    *(int*) (LazyMode + 1) = (BYTE*)SleepStub - (LazyMode + 5);

    VirtualProtect(LazyMode, 5, oldProtect, &oldProtect);
}
Ответ
#12
Shayne Написал:http://rghost.ru/52260732 - в System с заменой

Объяснитесь только, что за информацию вы собираете из окон?)
Спс огромное работает. Хз думал из за изменнного файла fire.dll не пустит на сервак. но видемо там либо нет зашиты от бота толи там другого рада зашита стоит

Кликер. Помогает сполить вторым окном.)) Друг попросил кликер настроить для второго окна. вот мучаюсь с низким фпс

Добавлено через 2 минуты
Akumu Написал:
Код:
int __cdecl SleepStub()
{
    return 0;
}

void DisableLazyMode(void)
{
    BYTE *LazyMode  = (BYTE *)GetProcAddress(LoadLibraryA("core.dll"), "?appSleep@@YAXM@Z");

    if(!LazyMode)
        return;
    
    ULONG oldProtect;
    if(!VirtualProtect(LazyMode, 5, PAGE_READWRITE, &oldProtect))
        return;

    *LazyMode = 0xE9;
    *(int*) (LazyMode + 1) = (BYTE*)SleepStub - (LazyMode + 5);

    VirtualProtect(LazyMode, 5, oldProtect, &oldProtect);
}

Прощу прошения, и что с этим делать?
[Изображение: ShadowName.gif]
Ответ
#13
Цитата:int __cdecl SleepStub()
{
return 0;
}
Вот с этой хренью нагрузка на ЦП просто неоправданно вырастет, сюда можно засунуть тот-же NtDelayExecution как делал Fyyre или иным способом заслипать поток (через sleep_for например).
Собственным опытом нашел оптимальное значение, 10-15мс.
Если устраивает и такое, тогда проще просто ret запихнуть туда, чем jmp на заглуху. Имхо.

Цитата:Прощу прошения, и что с этим делать?
Если разбираетесь, то собрать dll и добавить в её импорты fire.dll.
Ответ
#14
SouthBridge Написал:Вот с этой хренью нагрузка на ЦП просто неоправданно вырастет, сюда можно засунуть тот-же NtDelayExecution как делал Fyyre или иным способом заслипать поток (через sleep_for например).
Собственным опытом нашел оптимальное значение, 10-15мс.
Если устраивает и такое, тогда проще просто ret запихнуть туда, чем jmp на заглуху. Имхо.

Я особо не вдавался в тест, но спасибо за достойное замечание Smile

Добавлено через 21 час 41 минуту
SouthBridge, потестил я вообщем. Оптимальный вариант по мои замерам это слипать на 50ms при условии что переданный delay > 0. Это дает нам почти нулевое использование CPU когда игра не в фокусе, и не режет производительность рендера в развернутом состоянии.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Вызов окна крафта у гномов. Magican 0 1,252 01-10-2022, 07:22 PM
Последний пост: Magican
  Название окна диалога Lord_Gothic 2 1,408 06-14-2020, 09:09 PM
Последний пост: Lord_Gothic
  HTML размер окна adaria 6 1,997 02-25-2013, 03:45 PM
Последний пост: adaria
  Повышение статов Vlad2000 7 1,904 02-18-2012, 11:23 AM
Последний пост: Vlad2000
  Получить номер активного ретейла. RaRus 1 1,600 01-16-2011, 11:16 PM
Последний пост: RaRus
  Как убрать ограничение в 2 окна? Misna 4 4,224 01-11-2011, 03:20 PM
Последний пост: Misna
  Пакет закрытия окна заточки Akumu 5 2,955 09-01-2010, 06:42 PM
Последний пост: VISTALL
  запрет на 2 окна DarkLoki 4 3,687 04-04-2008, 08:39 PM
Последний пост: HackZ

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)