Що робиться після сесії

Вихід із сеансу, перезавантаження і чистка профілю: щоб наступний гравець не сів у чужий Steam.

Проблема, яку це закриває

На ігровому ПК усі гравці працюють під одним обліковим записом Windows (gamer) — так влаштовані майже всі клуби, і Cord Arena тут не виняток. Наслідок, якщо нічого не робити: гравець пішов, а в системі лишились його збережені входи — Steam, Discord, Epic, Battle.net, паролі й cookie браузера, тека «Завантаження». Наступний гість сідає й бачить чуже.

Для гравця це втрата акаунта з бібліотекою ігор. Для клубу — скарга, за яку нічим виправдатись.

Три налаштування в appsettings.json сервера

"Club": {
  "AfterSession": "LogOff",
  "AfterSessionDelaySeconds": 15,
  "WipeProfileAfterSession": true
}

AfterSession — що робить машина, коли сесія завершилась:

ЗначенняЩо відбуваєтьсяКоли обирати
Noneнічого, просто замоктестовий стенд; клуб, де кожен грає під своїм акаунтом
LogOffвихід із сеансу Windowsзвичайний вибір: швидко, усі програми гравця закриваються
Rebootперезавантаженняякщо ігри лишають по собі проблеми в системі
Shutdownвимкненняконсольний пост, нічний зал, економія електрики

AfterSessionDelaySeconds — пауза перед цією дією (типово 15). Гравець бачить на екрані «Сеанс завершено. Вийдемо з системи за 15 с» — і встигає забрати свої речі, а не отримує чорний екран посеред фрази. Якщо гравець за цей час сів знову (доплатив, новий чек) — дія скасовується.

WipeProfileAfterSession — прибирати сліди в профілі. Що саме прибирається:

  • токени входу лаунчерів: Discord, Epic, Battle.net, EA, Ubisoft Connect, Riot, FACEIT, OBS;
  • Steam: loginusers.vdf і config.vdf — саме там живе «запамʼятати мене»;
  • профілі браузерів: Chrome, Edge, Firefox, Opera (паролі, cookie, історія);
  • особисте: тека «Завантаження» і список останніх документів.

Що не чіпається спеціально: самі ігри, їхні налаштування й шейдер-кеші. Інакше кожна сесія починалась би з довгого перезавантаження бібліотек.

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

Якщо вихід із сеансу не вдався

Буває: зависла гра, відкритий діалог «зберегти зміни», політика Windows, що забороняє вихід. Агент перевіряє результат через 45 секунд і, якщо в сеансі досі той самий користувач, перезавантажує машину — і пише про це в журнал. Тихо це не проходить ніколи: наступний гравець не має сісти в чужий сеанс.

Звук попередження про кінець часу

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

Клуб може поставити свій сигнал: покладіть файл warning.wav поруч із CordArena.Lock.exe (типово C:\CordArena\). Якщо файлу немає — грає системний сигнал Windows.

Порада для пілоту

Почніть із LogOff + WipeProfileAfterSession: true. Це найдешевший спосіб закрити питання «чужий акаунт на моєму ПК» без бездискового завантаження й мандатних профілів, які потребують окремої серверної інфраструктури.