ТЕХНОЛОГІЯ

Як це працює

Що застосунок насправді робить із машиною, що він відмовляється робити і як скасовується кожна зміна. Написано, щоб це читали до встановлення, а не після того, як щось зламається.

Оновлено: 2026-09-03
Коротка версія

w0a змінює налаштування Windows — значення реєстру, плани живлення, виклики драйверів. Вона нічого не пише на рівні ядра, не ставить власного драйвера, не інжектує код в ігри й не читає ігрової пам’яті. Кожна зміна реєстру чи плану живлення записується разом із попереднім значенням і відкочується одним кліком.

Три кроки

1. Запусти. Інсталятора немає: один виконуваний файл, права кнопка, «Запустити від імені адміністратора». Права адміністратора потрібні, бо змінювані налаштування діють на всю машину — процес рівня користувача їх записати не може.

2. Спочатку виміряй. Відкрий «Бенчмарк», пограй хвилину-дві на тій самій карті й зроби запис до того, як щось міняти. Саме цей крок люди пропускають — і саме тому в цій темі стільки фольклору.

3. Застосуй і виміряй ще раз. Увімкни, що хочеш — по одному перемикачу, якщо хочеш знати, який що дав, — і зроби другий запис на тій самій сцені з тими самими налаштуваннями в грі.

Як насправді працює відкат

Перед записом значення старе зчитується й додається до журналу в %ProgramData%\w0a\backup.json разом із ключем, ім’ям значення, його типом і позначкою, чи існувало воно взагалі. Записи групуються в контрольні точки, і відкат до однієї з них — це повернення в той момент, а не вибіркове скасування: кожна зміна, зроблена після неї — разом із пізнішими контрольними точками, — відкочується теж, і саме це говорить підтвердження, перш ніж усе почнеться.

Журнал живе в %ProgramData%, а не у твоєму профілі користувача, бо відкат виконується з підвищеними правами і бере інструкції саме з цього файлу. З тієї ж причини файл — не довільний скрипт: відкотити можна лише шляхи з дозвільного списку, вкомпільованого в застосунок, тож підроблений журнал не змусить записати щось туди, куди не слід.

Сторінка Fix — друга половина, і від журналу вона не залежить узагалі. Майже кожна картка безумовно повертає типове значення Windows — тож машину можна полагодити, навіть якщо w0a її ніколи не торкалася, журнал видалено або значення змінило щось інше. Єдиний виняток — картка CS2: параметри запуску й autoexec — це твої власні файли, і типового значення Windows, яке можна було б відновити, у них немає, тож ця картка повертає копії .w0a.bak, зроблені w0a, і не робить нічого взагалі, якщо їх немає. Саме тому сторінці Fix дозволено видаляти значення, які решті застосунку писати не можна.

Повна процедура відкату, крок за кроком

Що вона відмовляється робити — і чому

Жодних значень рівня ядра. Ключі рівня ядра — paging executive, large system cache, використання пам’яті NTFS, запити роздільної здатності таймера — відхиляються одразу, а тест у збірці падає, якщо такий колись додадуть. Сторінка Fix зберігає право видаляти три з них — paging executive, використання пам’яті NTFS і запити роздільної здатності таймера, — бо стару інсталяцію від якогось іншого інструмента треба вміти полагодити. Large system cache відхиляється й на тому лишається: він ніколи не записується і не видаляється теж.

Жодних ключів MPO чи TDR. Режим тесту оверлеїв, вимкнення оверлеїв, затримка TDR і рівень TDR не записуються. На реальній машині вони заморожували CS2, а сторінка реєстру повертає TdrDelay назад до типового значення Windows, замість його підвищувати.

Жодної інжекції, жодної ігрової пам’яті. Нічого не завантажується в ігровий процес і ніщо його не читає. Записуються три ігрові файли й жодного більше: конфіг CS2 і параметри запуску Steam, які ти задаєш на сторінці «Параметри запуску», та файл відеоналаштувань CS2 на сторінці «Налаштування відео». Кожен із них, перш ніж його торкнуться, копіюється поруч у .w0a.bak. Обіцяти від імені жодного розробника античитів ми все одно не можемо — але жодної поведінки, яку вони шукають, у цієї програми немає.

Жодного власного драйвера. Температура CPU і таймінги RAM потребують читань ring-0, яких Windows не відкриває. Для них — і лише якщо ти це схвалиш — установлюється підписаний драйвер PawnIO: він читає і ніколи не пише. Відмовишся — ці два показники просто будуть недоступні.

Як вона вимірює

Час кадрів береться з власного потоку подій Windows. Без оверлею, без хука, без інжектованої DLL: споживаються ті самі події, які операційна система і так породжує, і перетворюються на середній FPS, 1% low і кількість затинань за хвилину. Число, яке важить, — 1% low: середнє може рости, а гра відчуватиметься гірше, і саме цей випадок одне-єдине середнє приховує.

Затримка вводу вимірюється з реального руху миші: інтервал звітів заміряється в міру їх надходження, тож показана частота опитування — та, яку пристрій справді видає, а не та, що написана на коробці. Поруч семплюється час DPC та ISR кожного драйвера на машині — саме це дозволяє відстежити затинання до драйвера-винуватця, а не вгадувати.

«До» і «після» йдуть парою. Результати зберігаються парами, і порівняння пропонується лише тоді, коли існують обидва записи. Число, яке нема з чим порівняти, нічого не доводить.

Як читати показники затримки

Порядок встановлення, що стоїть за стабільним 1% low, і як перевірити кожне число в ньому

Чому вона замовкає під час матчу

Зчитування графічного сенсора бере блокування всередині графічного ядра. Опитування кожні дві секунди під час гри давало на реальній машині помітне затинання — інструмент, що обіцяв плавніші кадри, сам коштував кадрів. Тому питання не в тому, чи гра попереду, а в тому, чи вона взагалі запущена: альт-табнута гра однаково рендерить, і зчитування, зроблене, поки ти сидиш у браузері, коштує їй того самого блокування адаптера, що й посеред бою. Апаратне опитування зупиняється на весь час, поки гра відкрита, і відновлюється, коли вона закривається. Те саме правило діє для сканувань шин і обходів процесів.

Усе стартує вимкненим

На свіжій інсталяції всі фонові рушії вимкнені — підняття пріоритету, фонове балансування, зарезервовані ядра, стримування індексатора, запобіжник сну. Кожен — свідомий вибір, який робиш ти, кожен на своєму перемикачі, і кожен каже, що зробить, перед тим, як це зробити. Рушій, що провалив п’ять проходів поспіль, зупиняє себе і каже чому — замість тихо збоїти до кінця сесії.

Що не вимірюється і що не обіцяється

Скільки це все дасть — залежить від машини, гри та мережевого маршруту, і w0a не вдає протилежного. Ніде в продукті немає обіцянки «10x FPS». Мережеві зміни не покращать уже насичений маршрут; процесор, що вперся у свій ліміт потужності, не підніме частоту через зміну плану. Гарантія інструмента вужча, і її можна перевірити: він каже, що змінив, більше нічого не змінював і може повернути кожну з цих змін назад.

Подивитися, що входить → Завантажити