Рейтинг темы:
  • 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,256 01-10-2022, 07:22 PM
Последний пост: Magican
  Название окна диалога Lord_Gothic 2 1,420 06-14-2020, 09:09 PM
Последний пост: Lord_Gothic
  HTML размер окна adaria 6 2,020 02-25-2013, 03:45 PM
Последний пост: adaria
  Повышение статов Vlad2000 7 1,921 02-18-2012, 11:23 AM
Последний пост: Vlad2000
  Получить номер активного ретейла. RaRus 1 1,605 01-16-2011, 11:16 PM
Последний пост: RaRus
  Как убрать ограничение в 2 окна? Misna 4 4,239 01-11-2011, 03:20 PM
Последний пост: Misna
  Пакет закрытия окна заточки Akumu 5 2,965 09-01-2010, 06:42 PM
Последний пост: VISTALL
  запрет на 2 окна DarkLoki 4 3,702 04-04-2008, 08:39 PM
Последний пост: HackZ

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


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